Linux 수퍼유저 루트 디렉터리 ls 명령이 모든 파일을 표시하지 않는 이유는 무엇입니까?

Linux 수퍼유저 루트 디렉터리 ls 명령이 모든 파일을 표시하지 않는 이유는 무엇입니까?

로그인한 후 다음을 통해 슈퍼유저 루트로 이동하면:

sudo su -

이제 루트 디렉터리에 있습니다. 를 통해 파일 및 디렉터리 목록을 표시할 수 있습니다 ls. 그러나 상당수의 디렉토리가 존재하지 않는 것 같습니다. 예를 들어 다음과 같이 할 수 있습니다.

cd /svr/www

그리고 디렉토리에 들어가게 됩니다 www. 루트에서 명령을 svr입력하면 디렉토리가 표시되지 않으며 표시된 ls디렉토리 아래에도 나타나지 않습니다.

내가 무엇을 놓치고 있나요?

답변1

명령을 실행한 후에는 루트 디렉터리가 아닌 sudo su -루트의 홈 디렉터리에 있다는 것을 알게 될 것입니다 . 따라서 표시되지 않습니다 . 어떤 폴더에 있는지 확인하는 것이 좋습니다 ./root/ls/srvpwd

답변2

디렉토리에 있고 /다음을 입력하면ls 됩니다.~ 아니다"재귀적" 하위 디렉터리를 참조하세요. 현재 디렉터리의 직계 하위 디렉터리만 표시됩니다. 따라서 보려면 먼저 , 그 다음 을 /srv/www확인해야 합니다 .cd /srvls

재귀적인 것과 같은 것이 있습니다 ls. 그러나 전체 경로가 필요한 경우 find더 나은 대안입니다.

보다이 StackOverflow 질문이는 이미 재귀적인 파일/디렉토리 목록 주제를 다루었습니다.

관련 정보