私はしばしば異なるタスクを実行するために2つのディレクトリ間を循環する自分自身を見つけます。ディレクトリ間に常に使いやすい相対パスがあるわけではありません。したがって、デフォルトでは、以前の作業ディレクトリであるディレクトリパスを指定する必要があるのはかなり面倒な作業です。
以前の作業ディレクトリに簡単に戻ることができるコマンドはありますか?
答え1
$OLDPWD
Bashは名前が示すように、シェル変数を使用して現在の作業ディレクトリの以前の値を保存します$PWD
。
また、マニュアルページ項目Bourne シェル内蔵こんな言葉がありますcd
。
パラメータは
-
と同じです$OLDPWD
。
これは、人々が簡単に入力できることを意味します。
$ cd -
意味は
$ cd $OLDPWD
答え2
cd -
またはを使用できますcd $OLDPWD
。しかし、pushd
andを使用することをお勧めしますpopd
。これらのユーティリティはディレクトリスタックであることを維持します。
pushd dir
:ディレクトリを変更しdir
、そのディレクトリをスタックに保存します。他の操作を実行すると、ディレクトリスタックに追加されますpushd dir4
。dir4
popd
:ディレクトリの変更をキャンセルできます。コマンドを実行すると、スタックにプッシュされpopd
た最後のディレクトリ(つまり現在のディレクトリ)が削除され、そのディレクトリがスタックの上部の2番目のディレクトリになるように変更されます。
dirs -v
:ディレクトリスタックの内容を表示します。
スタックの概念を理解すればわかりやすくなります。