我有一个文件夹,中间有一个随机数的文件。它们采用以下格式:
Input-4535344534x-results.xml
Input-4535344534y-log.xml
Input-4535344534z-main.xml
有没有办法通过.bat文件删除数字或者我可以作为ssis包的一部分执行的操作,以便我留下:
Input-x-results.xml
Input-y-log.xml
Input-z-main.xml
我尝试在powershell中运行它,但它似乎不起作用
Get-ChildItem -Filter *.xml | Rename-Item -NewName {$_.Name -replace '^[0-9_]+'}
由于
答案 0 :(得分:0)
ls Input-*.xml -n | % { mv $_ ($_ -replace '\d+') }
答案 1 :(得分:0)
这样的事情应该有效:
Get-ChildItem -Filter *.xml |
Foreach-Object {
$newName = $_.Name -replace "(\w+-)(\d+)(\w+)",'$1$3'
Rename-Item -Path $_.FullName -NewName $newName
}
更新:简化
Get-ChildItem -Filter *.xml | Rename-Item -NewName {$_.Name -replace "(\w+-)(\d+)(\w+)",'$1$3'}
如果有帮助,请告诉我。