powershell - 如何将带有空格的参数作为数组传递给 Powershell 中的 RoboCopy?

标签 powershell robocopy

我正在处理一个需要根据用户输入动态传入 RoboCopy 开关的脚本,因此使用 array似乎是最好的选择。但是,在使用时我看到以下问题我指定了类似 /XF 的参数具有空间和值(value)。

这按预期工作:

RoboCopy C:\Dir1 C:\Dir2 /NP /NFL /NS /NDL /NJH /NJS /XF *.config

这按预期工作:
$Switches = @("/NP", "/NFL", "/NS", "/NDL", "/NJH", "/NJS", "/E")

RoboCopy C:\Dir1 C:\Dir2 $Switches

这会抛出 ERROR : Invalid Parameter #10 : "/XF *.config" :
$Switches = @("/NP", "/NFL", "/NS", "/NDL", "/NJH", "/NJS", "/E", "/XF *.config")

RoboCopy C:\Dir1 C:\Dir2 $Switches

我尝试了一些事情,比如在 /XF 中使用引号参数但没有成功。任何提示/帮助表示赞赏。

最佳答案

你能试试这个吗,我无法测试,但让我知道..:

$Switches = @("/NP", "/NFL", "/NS", "/NDL", "/NJH", "/NJS", "/E", "/XF", "*.config")

关于powershell - 如何将带有空格的参数作为数组传递给 Powershell 中的 RoboCopy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15809719/

相关文章:

powershell - 在多台远程机器上获取服务

Powershell 查找创建文件的机器

batch-file - 自动复制文件而不覆盖,而是创建编号文件

scheduled-tasks - 计划任务 : Error 0X3 but Log doesn't give any error

visual-studio-2010 - 在构建后事件中复制和覆盖文件的正确语法

cmd - robocopy minage maxage 不工作

powershell - 使用备用凭证复制项目

unix - Windows/Mac/Ubuntu上的PowerShell(或脚本)可以轻松列出文件/目录结构吗?

azure - 如何将 SAS token 字符串作为文字传递给 Azure CLI?

Powershell robocopy 多个通配符