Linux/シェル/ディレクトリ移動

Linux/シェル/ディレクトリ移動

親ディレクトリに移動

cd ..

絶対パスで移動

cd /hoge/piyo/fuga

相対パスで移動

cd ../hoge/piyo/fuga

直前に居たディレクトリに移動

引数にハイフンを渡すと

cd -

シンボリックリンクを展開して移動

オプションで P を付けるとシンボリックリンクを展開して移動

cd -P ..

これはどういうことかというとディレクトリへのシンボリックリンク経由で移動するときにその効果が現れる。

/hoge/piyo/fuga

ディレクトリへのシンボリックリンク link_fuga が

/hogehoge

にあったとする。

っで現在 hogehoge にいるとする。ここで

cd link_fuga
pwd

とすると表示は

/hogehoge/link_fuga

となるつまりシンボリックリンクを展開しないでシンボリックリンク自体をディレクトリとして扱う

なのでこの状態で

cd ..

という風に親ディレクトリへ移動するとシンボリックリンクの位置の親ディレクトリへ移動する。・・・若干この挙動がキモいのだが・・

同じように

cd -P link_fuga
pwd

とやってみると表示は

/hoge/piyo/fuga

このようにリンク先のパスになる。つまり展開されている。

タグ

linux/shell/changes_directory.txt · 最終更新: 2012-03-11 19:10 by ore