Windows文件权限与* nix权限相当不同,那么在Windows中如何实现GnuWin coreutils的 chmod?
除非我误解了你的问题,否则我认为这真是一个服务器故障的问题。
但是假设这是关于在Windows中实现符合POSIX标准的chmod的编程,我将回答这个问题。 首先,一些背景… 这个维基百科文章讨论两个系统之间的差异做了一个公平的工作。 简而言之:基于Windows NT的操作系统(Windows XP非FAT,Windows Vista,Windows 7,Windows server 200X)使用与VAX更类似于UNIX的访问控制列表系统。 他们还拥有比读/写/执行更多的权限。
这就是说…差异并不是那么大:文件的所有者可以像在POSIX系统中一样授予文件权限,但不限于所有者,所有者组和世界其他地方和POSIX一样,权限可以被细化到特定的用户和用户组。
鉴于用户可以属于多个组,我猜想设置组权限只需将用户所属的所有组添加到文件ACL中,并对它们设置相同的权限即可。 世界很简单,那就是“人人”小组。 同上的老板。 我也想象,权限本身将被限制在POSIX权限,即读,写,执行。
由于这覆盖了用户可能想要在文件上处理的大多数权限问题的99%,因此我认为这就像chmod实用程序一样。 用户可以随时打开文件的属性窗口,并通过对其内容的权限进行更精细的调整。
如果我在Windows上实现chmod,我可能会添加额外的命令开关,以允许通过名称添加特定的用户和权限。
编辑
我刚刚在StackOverflow上找到了这个答案 ,它更直接地处理这个问题。
事实证明,有一个叫做_chmod
的win32函数,它和unix-like内核中的chmod
几乎完全一样。