私はあなたがディレクトリの所有者を決定できることを知っています:
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
ただし、所有者でなくても書き込み権限を持つことができます。これをどのように判断しますか?
stat
最近のLinuxシステムに固有であることに注意してください。他のunicesはstat
まったく異なるか、まったくない場合があります。通常、lsの解析はトラブルの原因になりますが、所有者を3番目の単語として解析すると、ほとんどが機能します(後で分解されます)。それでも完璧ではありません(ユーザー名にスペースを使用できるシステムもあります)。