해당 명령을 사용하고 파일 브라우저(Nemo)를 열고 싶습니다. find
결과는 다음과 같습니다.
그게 다야
find . -name "foo*" -exec nemo {} +
각 결과에 대해 새 창이 열립니다. 그래서 결과가 너무 많을 때 창을 많이 여는 것을 방지하기 위해 이 명령을 사용하여 tail -<number>
창 수를 제한하고 싶습니다.
이것은 작동하지 않습니다:
find . -name "foo*" -exec tail -1 {} \; -exec nemo {} +
이제 모든 창문이 열려 있습니다.
-exec
두 번째 매개변수를 첫 번째 매개변수로 사용하는 방법이 있나요 -exec
? 아니면 제가 뭔가 잘못 이해한 걸까요?
사용 사례: xfce 메뉴 > 검색 명령, 찾을 문자열을 인수로 사용:
find /my/home/dir -name "*%s*" -exec tail -<x> {} \; -exec nemo {} +
. (실수로) 문자열 "a"를 검색하면 수백 개의 결과가 나올 수 있습니다.
답변1
존재하다
find . -name "foo*" -exec tail -1 {} \; -exec nemo {} +
tail
파일 이름 목록이 아닌 발견된 각 파일의 내용을 실행하고 있습니다 .
최소한 GNU Coreutils를 사용하면 다음과 같은 작업을 수행할 수 있습니다.
find . -name "foo*" -print0 | tail -zn 1 | xargs -0 nemo