有人可以向我解释一些事吗? 如果我运行命令(get-acl .\test.txt) | Select-Object owner (get-acl .\test.txt) | Select-Object owner ,我明白了
Owner ----- BUILTIN\Administrators
这正是我所期待的。 但是,如果我运行命令(get-acl .\test.txt) | Select-Object Access (get-acl .\test.txt) | Select-Object Access ,我得到这个:
Access ----- {System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule, System.Security.AccessControl.FileSystemAccessRule}
而不是在该文件上拥有权限的用户/组的列表以及这些权限是什么。 那么我做错了什么?
Access属性包含一个数组。 您可以扩展它,而无需循环:
Get-Acl .\test.txt | Select-Object -ExpandProperty Access
当你试图打印它们时,这些对象没有漂亮的string转换,所以它们吐出了它们的对象types。
尝试一下这些方面:
(get-acl .\test.txt) | Select-Object Access | foreach-object { $_.identityreference }