端末から古い作業ディレクトリに移動するには?

端末から古い作業ディレクトリに移動するには?

端末でコマンドを使用してディレクトリを変更するときに古いディレクトリに移動するキーをどのように定義できますかcd

たとえば、入ってから/opt/soft/bin最初のディレクトリcd/etc/squid3戻りたいと思います。

答え1

あなたはそれを使用することができます

cd -

またはあなたは使用することができます

cd "$OLDPWD"

答え2

他の答えは直接的な答えという意味で絶対に完全です。 cd -そしてcd $OLDPWD確かに主な選択です。しかし、私はしばしばpushdワークフローを使用して起動する方が効果的であることがわかりましたpopd

簡単に言えば、ディレクトリに入る最終目標が始まった場所に戻るのなら、pushd/を使用してくださいpopd

拡張例

主な違いは、例で簡単に確認できます。

$ cd dir1
$ pushd dir2

この時点でディレクトリスタックがありますdir2, dir1。引数なしで実行すると、再びスタックにpushd保存されます。同じことを行いますが、空のディレクトリスタックを残します。これは、ワークフローの使用方法と大きく変わりません。dir1dir1, dir2popdcd -

ただし、ディレクトリを複数回変更してそのディレクトリに戻ることができますdir1

$ cd dir1
$ pushd dir2
$ cd dir3

この時走ればpopdまた戻ってくるdir1

答え3

以下を使用する必要があります。

cd ~-

cd -厄介なディレクトリエコーなしで(現在許可されている回答から)と同じことを行うか、cd "$OLDPWD"入力するのが簡単ですcd - > /dev/null

答え4

cd -~/.bashrcファイルを編集し、コマンドのエイリアスを含む「キーを定義する」ことができます。たとえば、次を追加して、最後のディレクトリに移動するより短い方法を提供するcdcmakeを追加できます。cd -

alias cdc='cd -'

このようにしてあなたがしなければならないcdcのは、最終作業ディレクトリに入る入力をすることだけです。

関連情報