web-dev-qa-db-ja.com

ターミナルで以前の作業ディレクトリに移動するにはどうすればよいですか?

ターミナルで、cdコマンドでディレクトリを変更するときに、前のディレクトリに移動するためのキーを定義するにはどうすればよいですか?

たとえば、私は/opt/soft/binにいて、cd/etc/squid3に入れ、最初のディレクトリに戻りたいと考えています。

224
Hojat Taheri

使用できます

cd -

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

cd $OLDPWD
299
Raphael Ahrens

他の答えは、直接的な答えの意味で間違いなく完全です。 cd -cd $OLDPWDは間違いなくこれの主な選択肢です。ただし、pushdpopdを使用したワークフローの方がうまくいくことがよくあります。

簡単に言えば、開始した場所に戻るという究極の目的でディレクトリに移動する場合は、pushd/popdを使用します。

拡張された例

主な違いは、例によって簡単に示されます。

$ cd dir1
$ pushd dir2

この時点で、dir2, dir1のディレクトリスタックがあります。引数なしでpushdを実行すると、dir1にスタックが戻り、dir1, dir2に戻ります。 popdも同じように動作しますが、空のディレクトリスタックが残ります。これは、cd -ワークフローの場合とほとんど変わりません。

ただし、ディレクトリを複数回変更してdir1に戻ることができるようになりました。例えば、

$ cd dir1
$ pushd dir2
$ cd dir3

この時点でpopdを実行すると、dir1に戻ります。

55
Josh Berry

あなたは使うべきです:

cd ~-

これはcd -と同じであり(現在受け入れられている回答から)、ディレクトリの煩わしいエコーがなく、cd "$OLDPWD"またはcd - > /dev/nullよりも入力が簡単です。

19
Anthon
$ cd - 

以前の作業ディレクトリに変更されます。

16
mezi

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

alias cdc='cd -'

このように、単にcdcと入力すると、最後の作業ディレクトリに移動します。

3
Atari911

cd ..は、フォルダーのツリー内の前のフォルダーに移動します。
cd -は前のフォルダに移動します。このコマンドは一部のディストリビューション(ubuntu 16.04)では機能せず、debian 9で機能します。

1
Scorpion