我是PowerShell的新手,我的问题很小。
我在C上有两个文件夹:/ - C:/folder1
和C:/folder2
folder1 包含10个子文件夹,我只想将其中的3个复制到 folder2 。
我应该使用远程计算机,所以我也应该使用Invoke-Command
。
不幸的是,该程序不能与我的代码一起使用。
$SubFolders = "C:/subfolder1", "C:/subfolder2", "C:/subfolder3"
$copy = InvokeCommand -ComputerName $compname | For-EachObject { Write-Host = "$SubFolders" }
$paste = "C:/folder2"
Copy-Item $copy $paste -Recurse -Force
答案 0 :(得分:0)
将多个子文件夹中的文件移动或复制到单个文件夹。
打开命令提示符窗口。使用以下命令行示例。
cd /d "d:\snaps\2016"
for /r %d in (*) do copy "%d" "d:\My pictures"
这会递归地将“snaps \ 2016”文件夹中的所有文件复制到“我的图片”文件夹。
或试试这个:
<$>`$ Path ='S:\ powerrocket \ 0test'#Root查找文件的路径 $ DestinationPath =“C:\ powerrocket \ 0test \”$ SubFolders = dir $ Path -Recurse | Where-Object {$ .PSIsContainer} | ForEach-Object -Process {$ .FullName}
ForEach($ SubFolders中的$ Folder){ $ FullFileName = dir $ Folder | Where-Object {!$ .PSIsContainer} | Sort-Object {$ .LastWriteTime} -Scending | Select-Object -First 1 Copy-Item -Path $ FullFileName -Destination $ DestinationPath -Force }`
答案 1 :(得分:0)
试试这个:
Invoke-Command -ComputerName $compname -ScriptBlock {param($folders,$paste) Copy-Item -Path $folders -Destination $paste} -ArgumentList $folders, $paste
不是最优雅的解决方案,但它确实有效。