Powershell 在Power shell脚本Gui中无缝执行Robocopy(!)
尝试使用Powershell备份一些大型目录新手 这条线不行Powershell 在Power shell脚本Gui中无缝执行Robocopy(!),powershell,robocopy,Powershell,Robocopy,尝试使用Powershell备份一些大型目录新手 这条线不行 "C:\Robocopy\RoboCopy.exe" $source $destination "/E /R:10 /W:5 /V /ETA" Robocopy最多只能执行(取决于“我放在这里或那里…”),但启动的是它的GUI(没有更多的操作) $dest和$source没有问题(我设法登录到一个txt文件,他的工作正常) 谢谢你使用这个: & "C:\Robocopy\RoboCopy.exe" $source $dest
"C:\Robocopy\RoboCopy.exe" $source $destination "/E /R:10 /W:5 /V /ETA"
Robocopy最多只能执行(取决于“我放在这里或那里…”),但启动的是它的GUI(没有更多的操作)
$dest和$source没有问题(我设法登录到一个txt文件,他的工作正常)
谢谢你使用这个:
& "C:\Robocopy\RoboCopy.exe" $source $destination /E /R:10 /W:5 /V /ETA
如果希望PowerShell将带引号的字符串作为命令运行,则需要&
(调用)运算符
在这种特定情况下,不需要引号,因为可执行文件的路径和文件名不包含空格,因此您可以只写以下内容:
C:\Robocopy\RoboCopy.exe $source $destination /E /R:10 /W:5 /V /ETA
但是robocopy.exe
真的位于C:\robocopy
?你有那个目录名吗?robocopy.exe
是操作系统附带的工具,应该已经在路径中了。为什么不只是这个
robocopy $source $destination /E /R:10 /W:5 /V /ETA
不要引用从
/E
开始的参数。只需将它们放在$destination
变量后面,不加引号即可。谢谢,但仍然不起作用。以您这样做的方式引用所有参数肯定不起作用,因为这意味着您将整个带引号的字符串作为单个参数传递。当您说“仍然不工作,“您需要明确说明它是如何工作的。打开PowerShell提示符并键入命令,然后观察其行为。此外,要在PowerShell中运行带引号的可执行文件名,必须在带引号的字符串命令前面加上&
(call)运算符。