$srcRoot = (Get-ChildItem -Path 'C:Unsigned Items*** Archive' -Directory).FullName
以上是我用来获取多个子文件夹下的所有文件的方法,这些子文件夹的名称为"* Archive"
例如:
C:UsersNickDocumentsCity 1City 1 Archive
C:UsersNickDocumentsCity 2City 2 Archive
C:UsersNickDocumentsCity 3City 3 Archive
我想移动所有的文件在每个"存档"子文件夹到不同的位置,如C:UsersDocumentsArchive
我想保留文件夹结构,同时也保留父文件夹中的文件夹结构。
您需要在移动文件之前创建文件夹结构。然后,您可以循环遍历每个项目,并将$_.Replace('C:Unsigned Items','C:UsersNickDocuments')
作为移动的目标路径。
你所需要做的就是直接移动到顶部文件夹:
Move-Item -Path "C:Unsigned Items*** Archive" -Destination "C:UsersDocumentsArchive" -WhatIf
这将在移动完成后保持相同的文件夹结构。
删除-WhatIf
参数当你指定这些是你要的结果