私はCentOS/Red Hat 6のACLについて学んでいる最中です。絶対パスを使用してgetfacl
を実行すると、次のような出力が得られます。
getfacl:絶対パス名から先頭の「/」を削除する
なぜこれが必要なのですか?どのような状況で-p
または--absolute-names
スイッチを使用する必要がありますか?
Wale SoyinkaとMichael Jangによる私の本は、これについてはあまり言及していません。manページには手掛かりがなく、この警告に直接対処しているサイトを見つけることができません。
getfacl
のmanページから:
-p, --absolute-names
Do not strip leading slash characters (`/'). The default behavior
is to strip leading slash characters.
-p
スイッチを使用せずに絶対パスを指定すると、警告メッセージが表示されます。
getfacl
コマンドに絶対パスが指定されている場合、出力は異なります。
-p
スイッチなし:
$ getfacl /path/foo/bar
getfacl: Removing leading '/' from absolute path names
# file: path/foo/bar
[Output truncated...]
ファイルパスの先頭のスラッシュは、-p
スイッチが使用されている場合にのみ表示されることに注意してください。
$ getfacl -p /path/foo/bar
# file: /path/foo/bar
[Output truncated...]
-p
は、出力をパイプしてさらに処理するときに、先頭のスラッシュを保持するのに役立ちます。
相対パスがgetfacl
コマンドに指定されている場合の出力は同じです。
$ getfacl bar
# file: bar
[Output truncated...]
変更なし:
$ getfacl -p bar
# file: bar
[Output truncated...]