我想将文件名中的所有下划线字符 ( _
) 替换为空格 ( )。
当我有很多_
字符需要替换时,如何才能快速完成此操作?
答案1
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)然后双击文件进行重命名。
答案2
编辑:在 Windows 10 和 11 中,现在可以执行此操作(以及更多)直接在 Explorer 中使用强力重命名来自 Microsoft 的免费 PowerToys 软件包的扩展。PowerToys 具有许多其他出色的扩展也是。不幸的是,它不适用于 Windows 7——但也许你从 2010 年起就升级了操作系统?;-)
正如其他人提到的那样,如果不使用脚本或批处理文件,就无法完全完成您想要的操作。 例如,在 PowerShell 中,您可以轻松完成您想要的操作:
cd "C:\Users\MyName\Documents\MyDirectory"
# by default, -replace is case-insensitive (equivalent to -ireplace)
# for case-sensitive, use -creplace
Dir | Rename-Item –NewName { $_.name –replace "_"," " }
只需确保将“C:\Users\MyName\Documents\MyDirectory”替换为您的目录的路径即可。
如需了解更多详细信息和其他选项,包括一些您能仅使用 Explorer 即可完成,请参见此处:http://www.howtogeek.com/111859/how-to-batch-rename-files-in-windows-4-ways-to-rename-multiple-files/
答案3
我建议使用第三方工具,例如批量重命名实用程序。它是免费的,并且安装程序小于 1 MB。
答案4
这是我的批量重命名 ruby 脚本。我没有使用过其他批量重命名工具,但我认为我的脚本非常易于使用且用途广泛。以下是适合您情况的命令:
ruby bren.rb *_* "_/ "
我已经设置了我的 Windows 环境,以便 bren.rb 可以从任何目录作为可执行文件执行。