답변:
다음과 같은 것을 시도하십시오 :
find "$(cd ..; pwd)" -name "filename"
$(cd ..; pwd)
. 여기서는 정상적으로 작동하지만 터미널에서 혼자하면 부모 디렉토리를 얻을 수 없습니다 ... "Bash : <dir> : 디렉토리입니다. $(cd ..; echo "something")
" command "
(cd ..; pwd)
( ... )
는 서브 쉘에서 실행을 의미하며 출력은 stdout에 기록됩니다. $( ... )
"명령 대체"를 나타냅니다. 후자는 변수 확장 인 것처럼 사용할 수 있습니다.
bash
의 Tilde Expansion을 사용 하여 현재 작업 디렉토리 find
의 절대 경로를 얻을 수 있습니다. 이렇게하면 결과에 대한 절대 경로도 인쇄됩니다.
find ~+ -type f -name "filename"
에서 실행 ~/Desktop
되면 다음으로 확장됩니다.
find /home/yourusername/Desktop -type f -name "filename"
다음과 같은 결과를 인쇄합니다.
/home/yourusername/Desktop/filename
이 방법을 현재 작업 디렉토리의 상위 디렉토리 와 함께 사용하려면 다음 cd
을 호출 하기 전에 수행 해야합니다 find
.
cd .. && find ~+ -type f -name "filename"
가장 간단한 방법은
find "$(pwd -P)" -name "filename"
find `pwd -P` -name "filename"
이것은 나를 위해 일했지만 첫 번째 사건 만 반환합니다.
realpath $(find . -type f -name filename -print -quit)
Sergiy Kolodyazhnyy에서 제안한대로 모든 경우에 대한 전체 경로를 얻으려면
find . -type f -name filename | xargs realpath