我目前正在学习如何使用PowerShell。我想知道是否有人可以告诉我如何使用PowerShell的命令行部分从多个子目录中复制多个文本文件。我知道如何在常规CMD中执行此操作,它看起来像这样:
for /f "delims=" %F in ('dir \*.txt /s/b') do copy "%~F" "C:\test\" /Y
但显然这在PowerShell中不起作用,需要进行一些调整。任何帮助将非常感激。谢谢!
答案 0 :(得分:12)
我实际上能够弄明白。这就是我做到的:
get-childitem -path "SOURCE\PATH" -filter *.txt -recurse | copy-item -destination "DESTINATION\PATH"
非常感谢!
答案 1 :(得分:0)
这是一个非常简单的路线。 test-servers.txt
是包含服务器/机器列表的文件(每行一个条目)。
Get-Content C:\Temp\test-servers.txt | ForEach-Object { Invoke-Command -ScriptBlock{Copy-Item -Path C:\Temp\resources\* -Destination ("\\" + $_ + "\C$\<path-of-interest>\")}}
注意:$_
是一个变量,以递归方式保存test-servers.txt
文件中的每个条目。
注意:此特定示例将“路径”中的所有文件复制到“远程”服务器/计算机列表。