사용자에게 디렉터리에 대한 쓰기 권한이 있는지 확인하는 방법은 디렉터리 이름이 명령줄 인수로 전달됩니다.
답변1
@SHW의 답변은 좋은 생각이 아니며 경우에 따라 잘못된 결과를 반환합니다.
test
다음 명령(또는 별칭) 만 사용하십시오 [
.
if [ -w "$dirname" ]; then
echo "$dirname is writable"
fi
테스트가 test
포함된 명령어는 이력을 확인하는 것이 아니라 쓰기 가능성을 확인하기 위해 호출되기 때문 입니다 .-w
UNIX permission bits
access(2)
이를 사용하면 기존 UNIX 권한 비트를 확인할 때 누락된 영향 도 포함된다는 장점이 access(2)
있습니다 .access
ACL
답변2
쓰기 권한을 찾는 간단한 스크립트
ls -ld directory | cut -c -10 > temp_perm
owner_perm=`cut -c 3 temp_perm`
group_perm=`cut -c 6 temp_perm`
other_perm=`cut -c 9 temp_perm`
[ "$owner_perm" -eq "w" ] && echo "Owner have write permission"
[ "$group_perm" -eq "w" ] && echo "Group have write permission"
[ "$other_perm" -eq "w" ] && echo "Other have write permission"