这是我到目前为止所做的工作。它正在搜索计算机列表,将所有计算机中的所有文件放在一个文件夹中。
我试图将文件放在一个以它们来自的机器命名的文件夹中。任何人的想法?
Get-Content C:\computers.txt | Foreach-Object {
$ComputerName = $_
Get-Childitem "\\$ComputerName\c$\Documents and Settings\**\desktop","\\$ComputerName\c$\Documents and Settings\**\My Documents" -Include *.xls*, *.doc*, *.txt, *.pdf, *.jpg -Recurse -Force
} | Copy-Item -Destination \\destination\share
答案 0 :(得分:2)
在循环中移动Copy-Item
并添加语句以创建目标文件夹:
$extensions = '*.xls*', '*.doc*', '*.txt', '*.pdf', '*.jpg', '*.pub'
Get-Content C:\computers.txt | % {
$ComputerName = $_
$dst = "\\destination\share\$ComputerName"
$src = "\\$ComputerName\c$\Documents and Settings\**\desktop",
"\\$ComputerName\c$\Documents and Settings\**\My Documents"
New-Item -ItemType Directory $dst
Get-Childitem $src -Include $extensions -Recurse -Force |
Copy-Item -Destination $dst\
}