현재 사용자에게 디렉터리에 대한 쓰기 권한이 있는지 확인

현재 사용자에게 디렉터리에 대한 쓰기 권한이 있는지 확인

다음을 수행하여 디렉토리의 소유자를 확인할 수 있다는 것을 알고 있습니다.

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.

관련 정보