有没有人对powershell了解多少?
我有大约3k个文件,我想编辑...的名称,例如
90_12200.jpg
到
12200p.jpg
答案 0 :(得分:1)
您可以使用带有递归选项的Get-Child项来加载所有jpg文件并使用Rename-item命令重命名它。
Get-ChildItem -r -path "C:\test" *.jpg | % { if(!$_.PSIsContainer -and $_.Name.Contains('_')) {Rename-item $_.FullName ( $_.BaseName.Split('_')[1] +"p" + $_.Extension) } }
答案 1 :(得分:0)
首先生成一些测试文件:
0..4 | % { set-content 90_1220$_.jpg "" }
# Output
90_12200.jpg
90_12201.jpg
90_12202.jpg
90_12203.jpg
90_12204.jpg
然后列出文件,传递给foreach并重命名。 $($_.BaseName.Replace("90_", "")+"p"+$_.Extension)
将使用基本名称,删除90_,添加字母p和文件的扩展名。
gci 90_*.jpg | % { Move-Item $_ $($_.BaseName.Replace("90_", "")+"p"+$_.Extension) }
gci
# Output
12200p.jpg
12201p.jpg
12202p.jpg
12203p.jpg
12204p.jpg