~/
명령줄에 "Permission Denied"라는 메시지가 표시됩니다. 실수. 디렉토리는 명령을 실행하는 사용자가 소유하고 권한을 갖습니다.
myhostname% ~/
/my/home/dir/: Permission denied.
권한을 확인하세요:
myhostname% whoami
myuser
myhostname% cd ..
myhostname% pwd
/my/home
myhostname% ls -la
total 40
drwxr-xr-x 7 myuser mygroup 4096 Sep 16 10:49 .
drwxr-xr-x 3 root root 4096 Sep 27 2010 ..
drwxr-xr-x 19 myuser mygroup 4096 Jan 15 13:36 dir
.cshrc 파일에 일부 설정이 누락된 것 같지만 그 이유와 내용을 잘 모르겠습니다. 내가 이 영역에 있다고 믿는 이유는 BASH로 다시 나갈 때 동일한 작업을 수행할 수 있기 때문입니다(프로필을 전환하고 있기 때문에 분명한 것 같습니다). 나는 분명한 것을 놓치고 있습니까?
myhostname% exit
logout
-bash-3.2$ ~/
-bash: /home/me/: is a directory
답변1
실행 권한이 있어도 디렉터리를 실행할 수 없습니다. 실행 가능 권한은 올바른 권한이 있는 사용자가 디렉터리에 있는 파일을 읽는 등 디렉터리와 그 내용에 액세스할 수 있음을 의미합니다(파일을 나열하려면 읽기 권한이 여전히 필요함).
답변2
나는 답을 찾은 것 같아요:
~/는 디렉터리이므로 명령으로 실행하면 안 됩니다.
~ = home directory
그래서 달려가려고 하는데
/my/home/dir
명령으로 또는 오히려
/my/home/dir/
전임자:
myhostname% ~/
/my/home/dir/: Permission denied.
myhostname% ~
/my/home/dir: Permission denied.
궁극적으로 ~/myfile 파일을 계속 참조할 수 있습니다.