<分区>
如何通过批处理文件删除某些字符或将某些字符替换为其他字符,一次性删除Windows文件夹中所有文件的文件名,是否有DOS命令?
<分区>
如何通过批处理文件删除某些字符或将某些字符替换为其他字符,一次性删除Windows文件夹中所有文件的文件名,是否有DOS命令?
最佳答案
使用 PowerShell 在 DOS 提示符下更智能地执行任何操作。在这里,我展示了如何批量重命名当前目录中所有包含空格的文件和目录,方法是将它们替换为 _
下划线。
Dir |
Rename-Item -NewName { $_.Name -replace " ","_" }
编辑:
可选 Where-Object
命令可用于过滤 连续cmdlet 的不合格对象(命令-让)。以下是一些示例来说明它可以为您提供的灵 active :
跳过任何文档文件
Dir |
Where-Object { $_.Name -notmatch "\.(doc|xls|ppt)x?$" } |
Rename-Item -NewName { $_.Name -replace " ","_" }
只处理目录(3.0 之前的版本)
Dir |
Where-Object { $_.Mode -match "^d" } |
Rename-Item -NewName { $_.Name -replace " ","_" }
PowerShell v3.0 引入了新的 Dir
标志。您也可以在那里使用 Dir -Directory
。
跳过任何已经包含下划线(或其他一些字符)的文件
Dir |
Where-Object { -not $_.Name.Contains("_") } |
Rename-Item -NewName { $_.Name -replace " ","_" }
关于windows - 替换或删除文件夹中所有文件的文件名中的某些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16636996/