【发布时间】:2015-06-16 05:47:38
【问题描述】:
我正在尝试编写一个使用robocopy 的脚本。如果我只是手动执行此操作,我的命令将是:
robocopy c:\hold\test1 c:\hold\test2 test.txt /NJH /NJS
但是,当我从 powershell 执行此操作时,例如:
$source = "C:\hold\first test"
$destination = "C:\hold\second test"
$robocopyOptions = " /NJH /NJS "
$fileList = "test.txt"
robocopy $source $destination $fileLIst $robocopyOptions
我明白了:
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Fri Apr 10 09:20:03 2015
Source - C:\hold\first test\
Dest - C:\hold\second test\
Files : test.txt
Options : /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
ERROR : Invalid Parameter #4 : " /NJH /NJS "
但是,如果我将 robocopy 命令更改为
robocopy $source $destination $fileLIst /NJH /NJS
一切顺利。
所以,我的问题是,如何将字符串作为我的 robocopy 命令选项传递(并且,在更大的意义上,对任何给定的外部命令执行相同的操作)
【问题讨论】:
标签: powershell command-line-arguments robocopy