특정 디렉토리의 전체 경로 이름을 가져옵니다.

특정 디렉토리의 전체 경로 이름을 가져옵니다.

내가 /path/to/dir이 디렉토리 내에 있다고 가정해 보겠습니다 subdir.

subdir식별 방법에 관계없이 전체 경로를 출력하는 명령을 실행할 수 있습니까 ? 예를 들어:

$ cmd subdir
/path/to/dir/subdir

$ cmd /path/to/dir/subdir
/path/to/dir/subdir

답변1

coreutils' realpath비결은 이렇습니다.

realpath subdir

하지만 작동하지만 디렉터리(또는 파일)가 지정되어 있습니다.

realpath /blah/blah2/subdir
realpath ../blah2/subdir

답변2

function somepath () {
  [ -z "$1" ] && { pwd; return; }
  (cd -P -- "$1" && pwd)
}

서브쉘을 생성하고( cd현재 쉘에 영향을 주지 않도록) cwd를 인쇄하세요. ("매개변수 없음" 사례에 대한 테스트에서 편집됨)

관련 정보