find 명령에 절대 경로를 지정하면 절대 경로와 함께 결과가 나옵니다. 따라서 Ken 디렉토리에서 다음을 입력해야합니다.
find /home/ken/foo/ -name bar -print
(상대 경로 대신 find . -name bar -print
)
당신은 얻을 것이다 :
/home/ken/foo/bar
따라서 원하는 것을 원 ls -l
하고 절대 경로를 반환하도록하려면 find 명령 ls -l
이 찾은 모든 것을 실행하도록 지시하면 됩니다.
find /home/ken/foo -name bar -exec ls -l {} ;\
참고 : {}
와 사이에 공백이 있습니다;
다음과 같은 것을 얻을 수 있습니다 :
-rw-r--r-- 1 ken admin 181 Jan 27 15:49 /home/ken/foo/bar
파일의 위치를 모르는 경우 언제든지 검색 위치를 변경할 수 있습니다. 검색 경로가 "/"로 시작되는 한, 절대 경로가 반환됩니다. 많은 권한 거부 오류가 발생하는 위치 (예 : /)를 검색하는 경우 표준 오류를 리디렉션하여 실제로 찾기 결과를 볼 수 있습니다.
find / -name bar -exec ls -l {} ;\ 2> /dev/null
( 2>
Born 및 Bash 쉘의 구문이지만 C 쉘에서는 작동하지 않습니다. 다른 쉘에서도 작동 할 수 있지만 Bourne 및 Bash에서 작동한다는 것만 알고 있습니다).
find /home/ken/foo/bar -exec ls -ld $PWD/{} \;