0

我正在遍历目录结构并使用 icACLs.exe 将每个目录的权限保存在其内部。我需要使用 robocopy 来查找所有路径,因为很多完整路径超过 260 个字符。有些还包括空格。

在涉及到空间之前,我似乎已经足够好地工作了,然后我得到-

icacls.exe : Y:/this/path/has/spaces /in/it" /save Perms.txt:文件名、目录名或卷标语法不正确。

这是我的代码:

robocopy Y:\Public NULL /l /e /nfl /xx /nc /ns /njh | Out-File Y:\results.txt
$results = Get-Content Y:\results.txt
ForEach ($sfile in $results) {
    $sfile = $sfile.Trim()
    cd $sfile
    New-Item -Name Perms.txt -ItemType File -force
    icacls.exe "$sfile" /save Perms.txt    
}

我尝试在引号、大括号中包含 $sfile,但我似乎无法让它顺利通过它们。我还注意到所有带空格的路径似乎都以错误中的双引号结尾,但我不知道为什么。想法?

4

0 回答 0