Suponho que
if [ -w ~/foo ]; then ....
deve fazer o que quiser.
Além disso, stat -c %U ~/foo
é a melhor maneira de obter o proprietário do que a análise de ls
output.
Eu sei que você pode determinar o proprietário do diretório fazendo:
ls -ld ~/foo | awk '{ print $3 }'
Você pode compará-lo ao usuário atual fazendo isso:
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
Mas você pode ter permissões para escrever sem ser o proprietário. Como você determina isso?
Tags permissions shell