CD가 기호 링크를 따르도록


76

코드를 홈 디렉토리에 sshfs로 마운트했지만 계층 구조를 기억하기 어렵 기 때문에 홈 디렉토리에 해당 디렉토리로 연결되는 심볼릭 링크를 만들었습니다. 기호 링크로 cd하는 대신 해당 기호 링크로 cd 할 때 실제로 해당 디렉토리로 cd되는 방법이 있습니까?

질문이 명확하지 않은 경우 다음은 내가 찾는 것의 예입니다.

foo@foo:~$ ls -l
lrwxrwxrwx  1 foo      foo              5 2012-11-14 08:20 foo -> bar/bar

foo@foo:~$ cd foo
foo@foo:~/bar/bar/$

3
두 가지 관련 질문
jw013

답변:


105

의 POSIX 구현 cd에서 -P옵션을 사용하여 이를 수행 할 수 있습니다 .

$ help cd
...
    -P      use the physical directory structure without following symbolic links
...

여기에서 실제로 볼 수 있습니다.

$ mkdir foo
$ ln -s foo bar
$ cd -P bar
$ pwd
/tmp/tmp.WkupF2Ucuh/foo

이것을 기본 동작으로하려면 다음 cd과 같이에 대한 별칭을 만들 수 있습니다 .

alias cd='cd -P'

... 또는 사용하십시오 set -o physical. tcsh의 경우 해당 명령은 set symlinks=chase입니다.


그리고 Posix 구현이 없다면 ...?
스콧 빅스
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.