最後のcdコマンドを元に戻すにはどうすればよいですか?


77

cd別のディレクトリに移動した後、前の作業ディレクトリに戻る方法はありますか?

私のユースケースは、Javaプロジェクトのディレクトリ構造を走査することであり、現在のディレクトリにはサブディレクトリが1つしかないと予想しています。だから、私はタイプcdとヒットTabEnterかなり早く。ただし、Tab実際にはさらにサブディレクトリが1つあるにもかかわらず、1つのサブディレクトリを誤って予期していたため、失敗しました。だから今、私はちょうど実行しcd、Javaプロジェクトの代わりに、私のホームディレクトリにいます。これを「元に戻す」方法でcd、私がいたディレクトリに戻る方法はありますか?

回答:


130

cd -どこにいても以前の場所に戻るために使用できます。


10
うーん... Ubuntuで何年も経っても、私はそれを知りませんでした。ありがとう
-andybleaden

19

cd - 1レベル前に戻るには最適ですが、数レベル前に戻りたい場合は、次のスクリプトを確認してください。

acd_func.sh

それは素晴らしい。たとえばcd --、履歴を表示したり、cd -33つのレベルに戻ったりします。


うわー、ジオシティーズリンク。今、私は長い間見なかったURLがあります。<Obi-wan JPGを挿入>
Michael Butler

1
このコメントの要旨。<jpgヨーダインサート>
ドンブピ


5

さらに、作業ディレクトリのディレクトリに戻るcd ..ことができ、必要に応じて、目的の場所に到達するまでコマンドを繰り返すことができます。実際には、それはそれを誘発されるたびに、最終的に終了しますディレクトリツリーを介して、戻ります(ルートディレクトリ)場合は、あなただけのコマンドを繰り返し続けました。/

コントラストcd -実際に(として知られている、現在の作業ディレクトリ以前作業ディレクトリを作る.)、およびファイルシステムのどの正確な位置を用いて求めることができますpwd

だから、両方cd ..cd - ディレクトリツリーをナビゲートするとき、彼らはないものの、さまざまな状況において有用であることができる異なり、前述の点で。おそらく、これら2つのコマンドを試して楽しんだ後の最も便利なコマンドはcd、ホームフォルダーに戻ることです。


-1

最良の方法は、バックに行くためにこれを行うにはcd -、あなたが一度レベルの多くをスキップしたい場合は、より良い使用、しかし、cd ..1つのレベルのためにcd ../..、2のために、cd ../../..これはそれが速く行うには3用とに...良い方法脚本:

#!/bin/bash
printf "Number of folders to move back: "
read TIMES
BACKCHARS=../
BACK=$(for i in `seq $TIMES`; do printf $BACKCHARS; done)
cd $BACK

1
cdスクリプトで実行しても、親シェルには影響しません。この機能を使用するには、シェル関数にこれを配置する必要があります。
wjandrea

このような:up(){ local n="$1"; while ((n--)); do path+='../'; done; cd "$path"; }
wjandrea
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.