2017-12-18 20 views
0

다른 프로그램에서 만든 여러 .txt 파일이 들어있는 폴더가 있습니다. 그러나 프로그램은 각 파일을 파일 이름의 "-Module"로 출력합니다. 예를 들어Windows에서 여러 파일 이름 바꾸기

filename-Module.txt 
filename1-Module.txt 
filename2-Module.txt 
나는 그래서 간단하게 끝낼 각 파일 이름에서 "-module를"각 파일을 반복하고 제거하는 스크립트 또는 명령 내가 실행할 수 있습니다 (파워 쉘/cmd를)이 있는지 알고 싶습니다

filename.txt 
filename1.txt 
filename2.txt 

나는 다음으로, 디렉토리에서 cmd를 사용하여 시도했다 : 이것은 변화 없음 결과

rename *-Module.txt *txt 

.

+0

지금까지 시도한 것은 무엇입니까? 어디서 붙어 있습니까? 당신의 노력을 공유하십시오; [편집] 귀하의 질문에 대한 ... – aschipfl

+0

답변을 찾을 수 있습니다 여기에 https://superuser.com/questions/236820/how-do-i-remove-the-same-part-of-a-file -windows-many-files-in-windows-7 –

+0

[cmd에서 여러 파일의 이름 바꾸기] 가능한 복제본 (https://stackoverflow.com/questions/17271586/rename-multiple-files-in-cmd) –

답변

2

get-childitem을 사용하여 rename-item에 파이프 할 수 있습니다.

get-childitem -path 'c:\folderwherefilesarelocated' -recurse | 
    rename-item -newname {$_.Name -replace "-module", ""} 
+0

''-module ''다음의 비트는 실제로 텍스트를 제거 할 필요가 없습니다. – TheIncorrigible1

+0

감사합니다. MattMoo. 이것은 일을 훌륭하게 돌 봤습니다. –

0

비교적 간단합니다 :

Get-ChildItem ComputerName\TestLocation\testfolder -filter "*-module*" | Rename-Item -NewName {$_.name -replace '-module', ''} 

이 폴더에있는 항목을 가져 그들에게 "-module"와 파일 이름을 찾아 다음 빈 문자열로 "-module"텍스트를 교체합니다. 이 작업을 수행하기 전에 출력을 보려면 -whatif을 추가 할 수도 있습니다.