我刚开始接触PowerShell,想知道是否有一种方法可以从文件名中删除一个字符。我要删除的字符是“-”,有时文件名中会有2或3个“-”。能否将带有“-”的文件重命名?
我刚开始接触PowerShell,想知道是否有一种方法可以从文件名中删除一个字符。我要删除的字符是“-”,有时文件名中会有2或3个“-”。能否将带有“-”的文件重命名?
Get-Item .\some-file-with-hyphens.txt | ForEach-Object {
Rename-Item $_ ($_.Name -replace "-", "")
}
要在文件名中删除或替换字符,请使用单引号 '
,对于“特殊”字符,请使用反斜杠 \
进行转义,以便正则表达式解析器字面理解。
以下代码从当前目录中所有文件名中删除 $
(美元符号):
Get-Item * | ForEach-Object { rename-item $_ ($_.Name -replace '\$', '') }
gi * | % { rni $_ ($_.Name -replace '\$', '') }
Z
"的操作:gi * | % { rni $_ ($_.Name -replace 'Z', '') }
Get-Item
中使用通配符。并且您可以通过将代码放置在反引号之间来格式化代码:`code`。 - Ansgar Wiechers