概要
bash で cd コマンドでディレクトリ移動する際、移動先がシンボリックリンクだった場合、シンボリックリンク先のディレクトリパスに移動する方法。
一言で言うと -P
オプションでシンボリックリンク先のディレクトリに移動できます。
例
# こういう状態
[vagrant@vagrant-centos65 test]$ ls -la /tmp/test
total 12
drwxrwxr-x 3 vagrant vagrant 4096 Oct 14 02:15 .
drwxrwxrwt. 5 root root 4096 Oct 14 02:15 ..
drwxrwxr-x 2 vagrant vagrant 4096 Oct 14 02:15 real-dir
lrwxrwxrwx 1 vagrant vagrant 18 Oct 14 02:15 virtual-dir -> /tmp/test/real-dir
#通常の cd
[vagrant@vagrant-centos65 test]$ cd /tmp/test/virtual-dir
[vagrant@vagrant-centos65 virtual-dir]$ pwd
/tmp/test/virtual-dir
# -P 付きの cd
# /tmp/test/real-dir へ移動している
[vagrant@vagrant-centos65 virtual-dir]$ cd -P /tmp/test/virtual-dir
[vagrant@vagrant-centos65 real-dir]$ pwd
/tmp/test/real-dir