크기가 지정된 제한보다 큰 모든 파일의 경로를 표시하는 방법

크기가 지정된 제한보다 큰 모든 파일의 경로를 표시하는 방법

크기가 지정된 제한(변수로 선언됨)보다 큰 모든 파일의 경로를 출력해야 합니다.

나는 find 스크립트를 사용하여 이 작업을 수행했습니다.

FILESIZE = "+10M";
find "$1" -maxlimit 1 -size "$FILESIZE" -type f -exec echo "put {}" \;

두 가지 오류가 발생합니다.

/mnt/d/Lab1_z2.sh: line 1: FILESIZE: command not found

find: unknown predicate `-maxlimit' 

어떻게 해결하나요?

답변1

첫 번째 오류는 간단합니다.

# wrong:
FILESIZE = "+10M";
# correct:
FILESIZE="+10M"

=쉘 변수를 할당할 때 기호를 둘러싸는 데 공백을 사용해서는 안 됩니다. 또 다른 질문 - 줄 끝에 세미콜론이 필요하지 않습니다. 아프지는 않지만 필요하지는 않습니다.

두 번째 오류는 실제로 당황스럽습니다. 이 옵션을 어디서 얻었습니까? -maxlimit에는 옵션이 없습니다 find. 가능한 모든 키와 옵션에 대해 알아보려면 다음을 수행 man find하고 계속 읽어보세요.

관련 정보