現在のユーザーにディレクトリへの書き込み権限があることを確認する

現在のユーザーにディレクトリへの書き込み権限があることを確認する

次のようにしてディレクトリの所有者を確認できることを知っています。

ls -ld ~/foo | awk '{ print $3 }'

その後、次のようにして現在のユーザーと比較できます。

if [[ $(ls -ld ~/foo | awk '{ print $3 }') == "$USER" ]] # or $(id -u -n ) instead of $USER
then
    echo "You are the owner"
else
    echo "You are NOT the owner"
fi

ただし、所有者にならずに書き込みアクセス権を持つことはできます。これをどのように決めますか?

答え1

私の考えでは

if [ -w ~/foo ]; then ....

あなたが欲しいものをする必要があります。

これはstat -c %U ~/foo、出力を解析するよりも所有者を取得するより良い方法ですls

関連情報