首页 > 解决方案 > 如何结合这两个命令

问题描述

我只是想让这两个命令中的一个

Get-ChildItem "\\myfileserver\out\*" | Rename-Item -NewName { $_.Name -replace '(?<=^.{3}).{13}', '.' }
get-childitem "\\myfileserver\out\*" | foreach { rename-item $_ $_.Name.Replace(".vfmpclmadj.", ".sa.") }

标签: powershell

解决方案


你可以链式替换。我会确保 get-childitem 在修改你正在循环的东西之前完成。反斜杠正则表达式的句点。

(Get-ChildItem \\myfileserver\out\*) | 
  Rename-Item -NewName { $_.Name -replace '(?<=^.{3}).{13}', 
  '.' -replace '\.vfmpclmadj\.', '.sa.' } -whatif

推荐阅读