pushd、popd、dirs - ディレクトリスタック操作
pushd, popd,また dirs は合わせて使います。
pushd, popd は基本的にはカレントディレクトリを変更するコマンドです。
さらに、ディレクトリスタックというものを操作します。
スタックという概念はASCII - スタックを参照してくだい。
pushd はディレクトリスタックにディレクトリをプッシュ(押し込む)して、指定してディレクトリへ cd します。 popd はディレクトリスタックからポップして (取り出して)、新たに先頭となったディレクトリへ cd します。 dirs はディレクトリスタックを出力します。
例えば
% pushd ~/public_html
とすると
~/public_html ~
のように表示されて、~/public_html に cd していると思います。 この
~/public_html ~
がディレクトリスタックです。
% dirs
で表示させることも可能です。さらに
% pushd /usr
とすると
/usr ~/public_html ~
のようになります。 そして、
% popd
とすると ~/public_html に戻れます。最初の要素を0番目として、1番目の要素のディレクトリに移動します。そして、0番目の要素をポップします。
~/public_html ~
ここでまた
% popd
とすれば ~/ に戻ることができます。ディレクトリスタックは
~
のようになります。
ディレクトリスタックにすでに存在していないディレクトリがあってエラーがおこってしまう場合は
% popd +[n]
のようにして破棄します。[n] には数字をいれます。先頭要素が 0 番です。