试图在Powershell中运行脚本只是挂在光标末尾的脚本上

时间:2017-04-21 03:05:17

标签: powershell

我在网上找到了this PowerShell script和其他变体的链接。它是一个将NTFS文件权限导出到CSV文件的简单脚本,因此我可以稍后编辑并输入新的域名。然后用另一个脚本将其导回。

当我尝试运行脚本时,替换我的变量,PowerShell只是挂在光标上。它在我测试的5台服务器上执行此操作。运行这个脚本我做错了什么?我是否复制并粘贴了错误,或者我是否必须在PowerShell中执行其他操作才能使其正常工作

这是我试图运行的脚本:

    Get-ChildItem "C:" -Recurse | ?{ $_.PsIsContainer } | %{ $Path = $_.FullName
    # Exclude inherited rights from the report
    (Get-Acl $Path).Access | ?{ !$_.IsInherited } | Select-Object `
    @{n='Path';e={ $Path }}, IdentityReference, AccessControlType, `
    InheritanceFlags, PropagationFlags, FileSystemRights } | Export-CSV "c:\temp\Permissions.csv"

1 个答案:

答案 0 :(得分:0)

重试这个:

Get-ChildItem "C:\"  | ?{ $_.PsIsContainer } | %{ $Path = $_.FullName; (Get-Acl $Path).Access | ?{ !$_.IsInherited } | Select-Object @{n='Path';e={ $Path }}, IdentityReference, AccessControlType, InheritanceFlags, PropagationFlags, FileSystemRights } | Export-CSV "c:\temp\Permissions.csv"

保持一行,我将$.PsIsContainer更改为$_.PsIsContainer,将$.FullName更改为$_.FullName;以更正语法并分离说明,我删除评论。它对我有用。