首页 > 解决方案 > 如何处理带有空格的目录?

问题描述

我想使用 PowerShellrobocopy来移动大量文件。如果任何目录中没有空格,则下面的代码有效。如何改进它以处理带有空格的目录?

$workingDirectory = Split-Path -Parent $PSCommandPath
$sourceDir = "$workingDirectory\source folder"
$targetDir = "$workingDirectory\target folder"
$logFile = "$workingDirectory\log.txt"
$options = "/copyall /b /is /r:5 /w:5 /log:$logFile"
Start-Process robocopy -args "$sourceDir $targetDir $options" -NoNewWindow -PassThru -Wait

标签: powershellrobocopy

解决方案


在不知道具体错误的情况下,很难准确地说出。您可以在周围添加转义引号$sourceDir$targetDir以便 PowerShell 在开始执行新进程时不会去掉引号robocopy

Start-Process robocopy -args `"$sourceDir`", `"$targetDir`", $options -NoNewWindow -PassThru -Wait

推荐阅读