"find"를 사용하여 홈과 하위 디렉터리에 있는 모든 bash 스크립트를 찾으려고 합니다. 이를 위해 터미널에 다음을 입력합니다.
find ~ -name '*.sh'
하위 디렉터리에 포함된 .sh 파일은 반환하지만 기본 디렉터리의 파일은 반환하지 않습니다.
그러나 다음 지침은 유효합니다.
find . -name '*.sh'
왜 "~"와 함께 작동하지 않는지 궁금합니다. 어떤 아이디어가 있습니까?
편집하다. 요청대로:
$ ls -ld ~
drwxr-xr-x 25 administrateur sudo 4096 janv. 28 13:52 /home/administrateur
$ ls -ld "$PWD"
drwxr-xr-x 3 root root 4096 janv. 28 11:15 /home
답변1
당신이 달릴 때
find . -name '*.sh'
당신은 에 있지만 홈/home
디렉토리는 입니다 .~
/home/administrateur
/home
따라서 외부 파일 find ~ ...
은 검색되지 않고 아래 파일만 검색됩니다 /home/administrateur
./home
/home/administrateur