【发布时间】:2021-09-08 18:22:43
【问题描述】:
我在某个时候卡住了。 假设以下目录:
d:\example
0 test1_123.txt
<DIR> test1_123_abc0
0 test2.txt
<DIR> test2_123
<DIR> test3_123_abc1
<DIR> test4_test0_abc0
我现在想使用正则表达式“_abc*”删除所有目录名称的后缀。我尝试了以下方法:
Get-ChildItem d:\example\ -Directory | foreach { rename-item $_ $_ -replace '_abc.' }
有人知道这里出了什么问题并可以分享解决方案吗?
【问题讨论】:
-
试试
Get-ChildItem 'd:\example\' -Recurse -Filter *_abc* | Rename-Item -NewName { $_.name -replace '_abc\d*$', ''} -
你怎么看这个 >>>
{ rename-item $_ $_ -replace '_abc.' }grin] 这两个$_项目看起来非常错误...... -
另外,当截断一个目录名使其成为另一个目录名时,你想如何处理欺骗目录名?
标签: regex powershell directory