find가 현재 디렉토리에서 검색해야 하는 이유는 무엇입니까?

find가 현재 디렉토리에서 검색해야 하는 이유는 무엇입니까?

/var/www/scripts/process_sounds.sh다음 명령을 사용하는 bash 스크립트가 있습니다.

find /var/www/unprocessed_sounds/ * -type f

unprocessed_sounds디렉터리에 있는 모든 파일을 찾아야 하지만 스크립트 디렉터리에 있는 모든 파일도 찾습니다(그런 다음 해당 파일을 사운드 파일처럼 처리하는데 이는 내가 원하는 것이 아닙니다).

find현재 디렉터리에 있는 항목을 반환하는 이유는 무엇입니까 ?

답변1

명령을 잘못된 방식으로 작성했습니다. 디렉토리에서 파일을 검색하려면 /var/www/unprocessed_sounds/다음과 같이 작성해야 합니다.

find /var/www/unprocessed_sounds/ -type f

이렇게 작성하면 현재 디렉토리 내의 모든 디렉토리를 의미하는 파일 find /var/www/unprocessed_sounds/ * -type f을 검색합니다 ./var/www/unprocessed_sounds/*

답변2

명령에 공백이 있습니다

find /var/www/unprocessed_sounds/ * -type f

find/var/www/unprocessed_sounds/그 안의 모든 파일을 찾고 별표를 제거 하고 싶다고 설명하고 있습니다 ./* (어쨌든 find는 디렉토리 깊숙이 들어갈 것이기 때문입니다).

답변3

/var/www/unprocessed_sounds/ 디렉터리의 파일만 처리하려는 경우 거기에서 *를 사용할 필요가 없습니다.

다음을 사용해 보세요:

find /var/www/unprocessed_sounds/ -type f

관련 정보