nul 문자로 구분된 선두 디렉토리를 인쇄하기 위해 find
with 명령을 사용하고 싶습니다 . -printf '%h\0'
나는 \0을 사용하고 있기 때문에 find 맨페이지의 "UNUSUAL FILENAMES" 섹션에 설명된 대로 find가 결과를 인용할 필요가 없거나 원하지 않습니다.
해당 옵션을 사용할 때 "내가 하고 있는 일을 정말 알고 있습니다"라고 말하고 인용하지 않을 수 있는 방법이 있습니까 -printf
?
답변1
find
아마도 파이프의 출력을 캡처하고 싶을 것입니다. 이 경우 인용은 활성화되지 않습니다(터미널로의 출력에만 사용됨).
예:
mkdir $'two line\ndirectory'
( cd two* && touch file )
그 다음에,
find two* -printf '%h\n'
.
two line?directory
하지만,
find two* -printf '%h\n' | cat
.
two line
directory
man find
이에 대해서는 (GNU) 섹션 에 설명되어 있습니다.특이한 파일 이름:
-printf
,-fprintf
출력이 터미널로 전송되지 않으면 그대로 인쇄됩니다.
그렇지 않은 경우(즉, 터미널로)
[...] 지시어
%f
,%h
및%l
가 참조%p
됩니다%P
.
문서에 나와 있는 내용에 관계없이 "참조된" 파일이나 디렉터리 이름을 볼 수 없다는 점에 유의해야 합니다. ?
위의 예를 보면 인쇄되지 않는 문자만 바뀌는 것을 볼 수 있습니다.