所有
我的目的是以名称' US.Services'开头复制所有文件。并且扩展名.dll从目录及其子目录到正在执行脚本的地方,我有以下内容但没有任何内容被复制。任何帮助将不胜感激。
Get-Childitem -Path ".\.\" -Filter *US.Services*.dll -Recurse |
Copy-Item -Destination "."
谢谢-Nen
答案 0 :(得分:1)
由于PowerShell v3可以使用$PSScriptRoot
自动变量来引用保存脚本的位置(在PowerShell v2中为$here = $MyInvocation.MyCommand.Path | Split-Path
。
请注意,这两种方法仅在脚本执行时才有效,如果您只是将它们粘贴到PowerShell控制台,它们将不会返回任何值。
如果我正确理解您的问题,您会查找以给定字符串开头并以扩展名结尾的文件,因此您需要在此处使用*
通配符:US.Services*.dll
。
Get-Childitem -Path $PSScriptRoot -Recurse -Filter "US.Services*.dll" |
Copy-Item -Destination $PSScriptRoot
如果将具有相同名称的文件复制到单个目录,则可能会产生异常,因为在单个目录中不能将两个文件命名为相同。