我是 powershell 的新手,想知道是否有办法从文件名中删除字符。我要删除的字符是破折号“-”,有时文件名中有 2 或 3 个破折号。是否可以重命名包含破折号的文件?
问问题
19517 次
2 回答
8
Get-Item .\some-file-with-hyphens.txt | ForEach-Object {
Rename-Item $_ ($_.Name -replace "-", "")
}
这个问题可能更适合超级用户。
于 2012-09-25T21:15:01.207 回答
6
要删除或替换文件名中的字符,请使用单引号'
,“特殊”字符使用反斜杠转义它们,\
以便正则表达式解析器按字面意思理解。
以下$
从当前目录中的所有文件名中删除(美元符号):
Get-Item * | ForEach-Object { rename-item $_ ($_.Name -replace '\$', '') }
以下与上述相同,为每个命令使用较短的别名:
gi * | % { rni $_ ($_.Name -replace '\$', '') }
以下是Z
从当前目录中的所有文件名中删除标准字符“”:
gi * | % { rni $_ ($_.Name -replace 'Z', '') }
于 2014-04-12T10:04:38.370 回答