1 string variables powershell rename
我有超过1000多个文件需要重命名.
第一个设置文件夹和/或文件按位置分组,因此每个文件的前四个字符相同; 有四五个不同的位置.我需要删除文件夹名称的前几个字符.
例:
旧文件:ABC_Doe,Jane
新文件:Doe,Jane
有关最快捷方式的建议吗?
我已经尝试了以下所有方法:
1st Attempt
$a = Get-ChildItem C:\example
$b = Where-Object {$_.name -like “*ABC_*”}
$cmdlet_name = “Rename-Item”
$d = (cmdlet_name $a $b)
invoke-expression $d
2nd Attempt
$e = Get-ChildItem C:\example
$f = $e.TrimStart (“ABC_”)
Run Code Online (Sandbox Code Playgroud)
第三次尝试
Rename-Item -{$_.name -like “*ASD*”, “”}
Run Code Online (Sandbox Code Playgroud)
试试这个,获取所有子项(仅限文件),删除abc_替换它们(什么都没有)并重命名每个文件.要重命名子目录中的文件,请将-Recurse开关添加到Get-ChildItem命令:
Get-ChildItem c:\example -Filter ABC_* | Where-Object {!$_.PSIsContainer} | Rename-Item -NewName { ($_.BaseName -replace '^ABC_') + $_.Extension }
Run Code Online (Sandbox Code Playgroud)
UPDATE
实际上,这应该也可以工作并且更短(不需要附加文件扩展名,因为在文件名上执行重命名).
Get-ChildItem c:\example -Filter ABC_* | Where-Object {!$_.PSIsContainer} | Rename-Item -NewName { $_.Name -replace '^ABC_' }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3436 次 |
| 最近记录: |