はじめに
シンボリックリンクのディレクトリに移動したときに、
pwd の実行結果がどうなるのか。
業務中にこのような状況になり、確かにちゃんと考えたことがなかったのでまとめてみました。
検証
とりあえずホームディレクトリ
/home/ec2-user に移動。
$ cd ~
$ pwd
/home/ec2-user
/tmp ディレクトリに対してシンボリックリンクを貼ります。
$ ln -s /tmp tmp
$ ll
total 0
lrwxrwxrwx 1 ec2-user ec2-user 4 Jun 29 03:03 tmp -> /tmp
ホームディレクトリからシンボリックリンクのディレクトリ
tmp に移動。
$ cd tmp/
pwd してみると。。。
$ pwd
/home/ec2-user/tmp
きちんとシンボリックリンクをたどって表示してくれます。
ちなみにオプション
-P を使うと実体のパスを表示してくれます。
$ pwd -P
/tmp
まとめ
無いかと思いますがシェルスクリプトで使うときは気を付けたほうが良いですね。
海津 純平