我想修改现有的文件夹结构。我有一个文件树,按以下方式组织:
Client Name
State/Province
City
Order Number
但是我修改了它以在序号之前添加一个地址,用连字符分隔,如下:
Client Name
State/Province
City
Order Number - Address
我使用生成原始文件的宏创建了新的文件夹结构,我认为这比重命名现有文件夹要容易得多。
所以现在我想将空文件夹上传到我的服务器,但在我这样做之前,我想从所有旧结构中取出文件并将它们放入新文件中。
简单地说,我正在尝试编写一个脚本,将原始层次结构中的文件夹名称与包含原始名称加地址的新层次结构相匹配,然后将原始文件夹中的文件复制到新文件夹中的文件夹中。结构
我该怎么做? VBA,Powershell,批处理命令?我不太熟悉PS。
答案 0 :(得分:0)
对foreach使用Get-ChildItem循环, Copy-Item, 和Test-Path Powershell cmdlets:
#Get all address subfolders
$addr_folders = Get-ChildItem c:\"Client Name"\State/Province\City\ -recurse | Where-Object {$_.PSIsContainer -eq $True}
#Loop through all address subfolders
foreach ($address in $addr_folders)
{
#Copy contents from existing subfolder path to new folder
if (Test-Path c:\"Client Name"\State/Province\City\"Order Number"\$address)
{
Copy-Item c:\"Client Name"\State/Province\City\"Order Number" c:\"Client Name"\State/Province\City\"Order Number - " $address
}
}