我的文件夹中大约有 1200 首歌曲,其文件名结构如下:
艺术家姓名 - 歌曲名称.mp3
例如:
Billy Joel - Piano Man.mp3
The Beatles - Nowhere Man.mp3
我想使用 Windows PowerShell 中的 DOS 命令对这些文件进行批量重命名,以删除连字符两侧的空格。但是,我不想删除所有空格。基本问题是能够在文件名规范中包含空格,以便将目录中所有文件中的“ - ”更改为“-”。以下是我想要更改的一些示例:
现有文件名
Billy Joel - Piano Man.mp3
The Beatles - Nowhere Man.mp3
所需文件名
Billy Joel-Piano Man.mp3
The Beatles-Nowhere Man.mp3
有人能想到一个可以在命令提示符下执行的 DOS 命令来对目录中的所有文件进行这样的更改吗?
我发现要用 DIR 命令列出所有此类文件,我可以使用:
DIR asterisk+doublequote+space+hyphen+space+doublequote+asterisk+dot+asterisk
我必须这样写出来,因为在这个论坛中实际语法似乎被视为格式化指令。
这列出了所有包含空格-连字符-空格 3 个字符串的文件。
肯定有办法。
答案1
您可以运行此命令:
ls | %{ ren $_ ($_.name -replace ' - ','-') }
使用 Powershell。这将替换{space}-{space}
为-
。
答案2
您可以使用文件管理器程序,例如“总指挥官“它内置了非常强大的批量重命名功能。