从实际文件扩展名中删除后缀

时间:2015-06-16 10:53:40

标签: powershell-v4.0

我正在尝试使用Rename-Item删除包含文件名中连字符的尾随字符,例如。 123456.001.zip-4.22815.ren123456-001.zip

Rename-Item -NewName ($_.Name.split('-')[0])

似乎是我在分手后失踪的东西。

2 个答案:

答案 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]  }