PowerShell 删除所有离开 UPC 的字母和破折号
PowerShell to remove all letters and dashes leaving UPC
我有大约 1,800 个 .pdf,包括需要删除以进行管理的带有破折号和文本的 UPC。我找到了删除多余空格和下划线的代码。
如何删除所有文本,只留下 UPC?
01182232110_V1R1_CartonOL_KP_DNV15.pdf
...到...
01182232110.pdf
# Targets .pdf files in the current dir.
# Add a -LiteralPath / -Path argument to target a different dir.
# Add -Recurse to target .pdf files in the target dir's entire *subtree*.
Get-ChildItem -Filter *.pdf |
Rename-Item -NewName { $_.Name -replace '_.+(?=\.)' } -WhatIf
注意:上面命令中的-WhatIf
common parameter预览操作。一旦您确定该操作将执行您想要的操作,请删除 -WhatIf
。
-replace
'_.+(?=\.)'
本质上是从输入文件的基本名称中删除以第一个 _
开头的所有字符(保留扩展名)。
我有大约 1,800 个 .pdf,包括需要删除以进行管理的带有破折号和文本的 UPC。我找到了删除多余空格和下划线的代码。
如何删除所有文本,只留下 UPC?
01182232110_V1R1_CartonOL_KP_DNV15.pdf
...到...
01182232110.pdf
# Targets .pdf files in the current dir.
# Add a -LiteralPath / -Path argument to target a different dir.
# Add -Recurse to target .pdf files in the target dir's entire *subtree*.
Get-ChildItem -Filter *.pdf |
Rename-Item -NewName { $_.Name -replace '_.+(?=\.)' } -WhatIf
注意:上面命令中的-WhatIf
common parameter预览操作。一旦您确定该操作将执行您想要的操作,请删除 -WhatIf
。
-replace
'_.+(?=\.)'
本质上是从输入文件的基本名称中删除以第一个 _
开头的所有字符(保留扩展名)。