find의 -printf 문은 어떻게 작동하나요?

find의 -printf 문은 어떻게 작동하나요?
find /home/lead_admin -type f -printf '%s %p\n' | sort -nr | head -10

위의 진술은 -printf '%s %p\n'정확히 무엇을 하는가 ?

답변1

에서 man find:

-printf format
True입니다. "\" 이스케이프 문자와 "%" 지시문을 해석하여 표준 출력의 인쇄 형식입니다. 필드 너비와 정밀도는 "printf" C 함수를 사용하여 지정할 수 있습니다. 많은 필드가 %d 대신 %s로 인쇄됩니다. 이는 플래그가 예상대로 작동하지 않음을 의미할 수 있습니다. 이는 또한 "-" 플래그가 작동함을 의미합니다(필드를 왼쪽 정렬하도록 강제함). -print와 달리 -printf는 문자열 끝에 개행 문자를 추가하지 않습니다. 이스케이프 문자와 지침은 다음과 같습니다
.
\n Newline

%p File's name

%s File's size in bytes

즉, -printf '%s %p\n파일 크기를 바이트 단위로 인쇄한 다음 공백, 파일 이름, 마지막으로 개행 문자를 인쇄한다는 의미입니다.

관련 정보