답변:
vbScript가 대신해야합니다. 다음을 포함하는 "rename_underscores.vbs"라는 파일을 만듭니다.
Set objFso = CreateObject("Scripting.FileSystemObject")
Set Folder = objFSO.GetFolder("c:\test\")
For Each File In Folder.Files
sNewFile = File.Name
sNewFile = Replace(sNewFile,"_"," ")
if (sNewFile<>File.Name) then
File.Move(File.ParentFolder+"\"+sNewFile)
end if
Next
폴더 이름이 올바른지 확인하십시오. (이 예에서는 c : \ test를 사용했습니다.) 그런 다음 파일을 두 번 클릭하여 이름을 바꿉니다.
이것은 dos bat 파일의 영역 내에 있습니다. 박쥐 파일 (새로 만들기-> 텍스트 파일, 확장자를 .bat로 변경)을 만든 다음 아래의 파란색 섹션을 복사하십시오.
나는 그것을 섹션으로 나누고 그것이 무엇을하고 있는지 설명 할 것이다.
나중에 비교할 디렉토리의 현재 상태를 인쇄하십시오.
dir /b
디렉토리에 파일을 나열한 다음 밑줄을 포함하고 .txt로 끝나는 모든 파일에 대해 ProcessFile을 호출하십시오.
for %%f in (*_*.txt) do call :ProcessFile %%f
goto :finished
"str = % str : x = y %"구문은 x의 인스턴스를 y로 바꿉니다. 이 경우, 우리는 "_"를 아무것도 대체하지 않습니다
:ProcessFile
set str=%1
rename %1 %str:_=%
goto :eof
그게 다야!
이제 변경된 내용 만 인쇄하여 예상대로 작동하는지 확인할 수 있습니다.
:finished
echo ----
dir /b
결과 (박쥐 파일의 일부가 아님)
baz_ing.txt
big_rawr.foo
foo_bar.txt
multiple_underscores_test.txt
----
bazing.txt
big_rawr.foo
foobar.txt
multipleunderscorestest.txt
Bulk Rename Utility 와 같은 타사 도구를 사용하는 것이 좋습니다 . 무료이며 설치 프로그램이 1MB 미만입니다.
다른 사람들이 언급했듯이 스크립트 또는 배치 파일을 사용하지 않고 원하는 것을 정확하게 수행 할 수있는 방법이 없습니다. 예를 들어 PowerShell에서는 원하는 것을 쉽게 수행 할 수 있습니다.
cd "C:\Users\MyName\Documents\MyDirectory"
Dir | Rename-Item –NewName { $_.name –replace "_"," " }
"C : \ Users \ MyName \ Documents \ MyDirectory"를 디렉토리 경로로 바꾸십시오.
탐색기 만 사용하여 수행 할 수있는 작업을 포함하여 자세한 내용 및 기타 옵션 은 다음을 참조하십시오. http://www.howtogeek.com/111859/how-to-batch-rename-files-in-windows-4-ways- 여러 파일 이름 바꾸기 /
여기 내 배치 이름 변경 ruby script 입니다. 다른 배치 이름 바꾸기 도구를 사용하지는 않았지만 스크립트는 사용하기 쉽고 다양합니다. 귀하의 경우에 대한 명령은 다음과 같습니다.
ruby bren.rb *_* "_/ "
bren.rb를 모든 디렉토리에서 실행 파일로 실행할 수있는 방식으로 Windows 환경을 설정했습니다.
가장 강력한 Windows 기반 이름 바꾸기 도구이며 무료입니다. http://www3.telus.net/pfrank/
이것은 명시 적으로 질문 ( '..에서 탐색기')에 대답하지는 않지만이 작업을 수행하는 가장 유용한 소프트웨어는 Adobe Bridge (무료)입니다.
추가 보너스 : Regex를 지원합니다!