我正在尝试使用Rename-Item
删除包含文件名中连字符的尾随字符,例如。 123456.001.zip-4.22815.ren
至123456-001.zip
。
Rename-Item -NewName ($_.Name.split('-')[0])
似乎是我在分手后失踪的东西。
答案 0 :(得分:2)
拆分操作必须在脚本块({}
)中执行。一个简单的表达式(()
)不会起作用。
... | Rename-Item -NewName { $_.Name.Split('-')[0] }
如果您希望将句点替换为连字符,请添加-replace '^(\d+)\.', '$1-'
。
... | Rename-Item -NewName { $_.Name.Split('-')[0] -replace '^(\d+)\.', '$1-' }
答案 1 :(得分:0)
我让我的脚本处理这些更改;
$src = "D:\temp"
Get-ChildItem -path $src -filter *.ren | ForEach-Object {
Rename-item -path $_.FullName -newname $_.Name.Split('-')[0] }