1

命令

    cd c:/p4
    ls -ld  .  c:/p4  /cygdrive/c/p4

节目

    d---------+ 1 jgunter Domain Users 0 Apr 27 18:41 .
    d---------+ 1 jgunter Domain Users ? 0 Apr 27 18:41 /cygdrive/c/p4
    drwxr-xr-x  1 jgunter Domain Users ? 0 Apr 27 18:41 c:/p4

ls 显示我只想查看使用 C:/ 路径指定的文件的权限。

我知道 getfacl,但我希望有一些 ls 选项可以告诉我我想要什么,而不需要我拼出绝对路径。

我可以做类似的事情:

     ls -ld `cygpath -da $@`

但是当我在一个深度嵌套的文件夹中时,输出会被完整的路径名弄得一团糟。

4

1 回答 1

0

DOS 路径使 cygwin 将文件系统视为没有 ACL。这意味着ls显示了正确的 ACL,但使用不同的选项挂载了相同的目录。因此ls没有这样的选项,您需要一种解决方法。

https://cygwin.com/cygwin-ug-net/ov-new1.7.html状态为 1.7.2:

始终处理本地 DOS 路径,就像使用“posix=0,noacl”安装一样

除此之外,我认为这d---------+很奇怪。我已经在我的电脑上试过了,1.7.31 cygwin 版本,它显示drwx------+,这有点好。我在 cygwin ACL 处理中遇到了其他错误和奇怪的行为。我想这有一些混乱和一些技巧。chmod 777在我的情况下是一个很好的解决方法。

于 2015-05-22T10:22:08.933 回答