我想将一个文件logo.png
复制到不同的多个文件夹。到目前为止,我正在这样做
Get-Childitem "D:OrgIcon" -Recurse -Include "*logo.png" |
Copy-Item -Destination "D:LoginPage"
Get-Childitem "D:OrgIcon" -Recurse -Include "*logo.png" |
Copy-Item -Destination "D:HomePage"
Get-Childitem "D:OrgIcon" -Recurse -Include "*logo.png" |
Copy-Item -Destination "D:AboutUs"
有什么方法可以使其单一命令?
我看过这一点,但看起来有所不同。
我不知道一个单个命令来实现您要做的事情。正如您发布的链接中指出的那样,您可以通过一行代码来实现目标,但这涉及管道。
"D:LoginPage", "D:HomePage", "D:AboutUs" | ForEach-Object { Get-Childitem "D:OrgIcon" -Recurse -Include "*logo.png" | Copy-Item -Destination $_}
在第一部分中,您只是将目的地列为字符串,并由逗号隔开。
第二部分将对每个目标的支架{}内执行代码。
注意:$ _代表当前管道中的数据,因此每次迭代$ _都将被您的目的地替换。
我猜这是您需要定期使用不同目的地,来源和文件名来做的事情,您总是可以编写一个脚本文件,该文件接受其参数的输入,但这是另一个问题的主题。
希望这很有用。