【发布时间】:2017-11-10 21:19:19
【问题描述】:
起初:这不是一个重复的问题(我希望如此)。我搜索了很多,发现了 How to find files with no file extension in directory tree with a batch file? 和 Find and rename files with no extension? 等,但我还有一个“小”的额外问题。
我正在尝试在 Windows 10 上重命名多个(数千个)jpg 文件。名称格式为“名称 (ABC).jpg”或“多个名称 (ABC).jpg”。我需要“Some Name.jpg”。
你尝试过什么?很多事情,没有一个是真正的解决方案,直到这个:
for /f "tokens=1-3 delims=)(" %%a in ('dir /b *.jpg') do @rename "%%a(%%b)%%c" "%%a"
for /R %%x in (*.) do ren "%%x" *.png
它适用于大多数文件,除非名称中有一个点。如果名称类似于“A Name.Supercool (ABC).jpg”,则只有“A Name.Supercool”,没有扩展名。
我知道问题出在 (*.) 上,只是不知道如何解决...
【问题讨论】:
-
"你试过什么?这么多东西,没有一个是真正的解决方案" - 然而在 powershell 中,真正的解决方案只是
gci *.jpg | ren -newname { ($_.basename -replace '\s+\(.*\)') + ".png"}。跨度> -
更好的解决方案,谢谢。这可能是公认的答案。
标签: batch-file