如何在 Powershell 中指定 chmod 744?

m00*_*0.0 10 powershell permissions file-permissions

我知道我可以使用 icacls 来指定文件的权限,从什么是 chmod 777 的等价物?, 我可以用

icacls myfile.txt /grant Everyone:F
Run Code Online (Sandbox Code Playgroud)

但是如何为 chmod 744 设置等效项?我想我可以/grant:____:R仅用于读取访问,但我不确定如何像使用 chmod 一样简单地指定所有者和组权限。当我尝试这个时:

icacls myfile.txt /grant Owner:F Group:R Everyone:R
Run Code Online (Sandbox Code Playgroud)

我收到错误消息,“未完成帐户名称和安全 ID 之间的映射。” 我可能遗漏了一些明显的东西,有什么想法吗?

当我尝试:

icacls myfile.txt /grant Administrator:F /grant:r Users:R
Run Code Online (Sandbox Code Playgroud)

我在资源管理器中查看了该文件,它为管理员提供了“特殊权限”(而不是完全控制),并为用户提供了“读取和执行、读取和特殊权限”。

Vom*_*yle 7

尝试一下,看看这是否能达到您想要实现的目标。我总是显式地运行这些命令,一个用于设置Owner,一个用于设置Full Control,一个用于设置Read-only,一个用于设置Read and Execute

通过这种方式,您可以针对特定文件以及适用的特定用户或组执行此操作。只需插入您的文件名等即可。

用于设置所有者、授予完全控制、只读和读取加执行访问权限的 ICACLS 命令示例 (您可能需要使用这些命令以管理员身份运行命令提示符)

::Set Owner of a specific file
ICACLS "D:\test\test.txt" /setowner "administrator"

::Grant Full Control
ICACLS "D:\test\test.txt" /grant:r "administrator:(F)" /C

::Grant Read and Execute Access of a specific file
ICACLS "D:\test\test.txt" /grant:r "users:(RX)" /C

::Grant Read-only Access of a specific file
ICACLS "D:\test\test.txt" /grant:r "users:(R)" /C
Run Code Online (Sandbox Code Playgroud)