Sea*_*ans 12 linux acl filenames
我正在学习 CentOS/Red Hat 6 的 ACL;当我getfacl
使用绝对路径运行时,我得到了输出:
getfacl:从绝对路径名中删除前导“/”
为什么需要这样做?在什么情况下需要使用-p
or--absolute-names
开关?
我的 Wale Soyinka 和 Michael Jang 的书甚至没有提到这一点,我在手册页中没有看到任何线索,而且我似乎找不到任何直接解决此警告的网站。
从手册页getfacl
:
-p, --absolute-names
Do not strip leading slash characters (`/'). The default behavior
is to strip leading slash characters.
Run Code Online (Sandbox Code Playgroud)
当您在不使用-p
switch 的情况下提供绝对路径时,会发出警告消息。
当给getfacl
命令提供绝对路径时,输出是不同的。
不带-p
开关:
$ getfacl /path/foo/bar
getfacl: Removing leading '/' from absolute path names
# file: path/foo/bar
[Output truncated...]
Run Code Online (Sandbox Code Playgroud)
请注意文件路径中的前导斜杠仅在使用-p
switch时显示。
$ getfacl -p /path/foo/bar
# file: /path/foo/bar
[Output truncated...]
Run Code Online (Sandbox Code Playgroud)
-p
当您通过管道传输输出以进行进一步处理时,保留前导斜杠很有用。
当给getfacl
命令提供相对路径时,输出是相同的。
$ getfacl bar
# file: bar
[Output truncated...]
Run Code Online (Sandbox Code Playgroud)
没有变化:
$ getfacl -p bar
# file: bar
[Output truncated...]
Run Code Online (Sandbox Code Playgroud)