+
안에서는 무슨 일이 벌어지고 있나요 find /path/ -exec command '{}' +
? 상대적인find /path/ -exec command '{}' \;
답변1
"+"는 발견된 모든 파일을 하나의 큰 명령줄로 만들어 실행할 명령 수를 최소화합니다.
find 명령이 네 개의 파일을 찾았다고 가정합니다.
find . -type f -exec command '{}' \;
생산할 것입니다
command file1
command file2
command file3
command file4
반면에
find . -type f -exec command '{}' \+
생산하다
command file1 file2 file3 file4
답변2
매뉴얼 페이지에서:
-명령 실행 {} +
-exec 작업의 이 변형은 선택한 파일에서 지정된 명령을 실행하지만 명령줄은 선택한 각 파일 이름을 끝에 추가하여 구성됩니다. 명령의 총 호출 수는 일치하는 파일 수보다 훨씬 적습니다. . 명령줄은 xargs가 명령줄을 작성하는 것과 거의 동일한 방식으로 작성됩니다. 명령에는 "{}" 인스턴스가 하나만 허용됩니다. 이 명령은 시작 디렉터리에서 실행됩니다.