Powershell 使用通配符替换文件夹/文件

Powershell 使用通配符替换文件夹/文件,powershell,rename-item-cmdlet,Powershell,Rename Item Cmdlet,我是编程新手,需要一些提示 我需要替换某个位置的文件夹/文件,该位置的前缀为日期,因此该文件夹的名称为动态,如: C:\20200825\u Folder1我想在C:\A\u Folder1中重命名此文件夹 我尝试了以下方法: get-item "C:\*Folder1 | Rename-Item -NewName {$_.Name -replace "*Folder1", "A_Folder1"}" 或 作为解决方案,我复制了“*F

我是编程新手,需要一些提示

我需要替换某个位置的文件夹/文件,该位置的前缀为日期,因此该文件夹的名称为动态,如:

C:\20200825\u Folder1我想在C:\A\u Folder1中重命名此文件夹

我尝试了以下方法:

get-item "C:\*Folder1 | Rename-Item -NewName {$_.Name -replace "*Folder1", "A_Folder1"}"

作为解决方案,我复制了“*Folder1”,将其重命名为“a_Folder1”,并删除了“*Folder1”

然而,我不确定这是否是最佳实践,所以我想我问了一些更有经验的开发人员


如果您不希望,我不希望使用代码,但如果您有任何建议,我将不胜感激。

如果您不想根据文件夹的旧名称来设置文件夹的新名称,您只需提供文件夹的新名称即可。。。。像这样:

Get-Item -Path 'C:\*Folder1' | 
    Rename-Item -NewName 'A_Folder1'

顺便说一句:
Rename Item
不允许对
-Path
参数使用通配符。

非常感谢@Olaf。我将其扩展为:
$Test=Get Date-Format“yyyyMMdd”Get Item-Path“C:\*Folder*”| Rename Item-NewName($Test+“\u A”+“\u Folder”)
Get-Item -Path 'C:\*Folder1' | 
    Rename-Item -NewName 'A_Folder1'