'cd-'は何の略ですか?


95

今日のbashシェルスクリプトで、スクリプトの最後に以下のコマンドがあることに気づきました。私は何であるかを知っていますcdが、その後のダッシュの重要性に気づいていません。

cd -

これは何を意味するのでしょうか?グーグルは素朴に切り捨てる-ので、私はその答えを見つけることができません。


@nmいいえman cd、私のマシンではありません、参考までに。
ダンフェゴ2012年

それを試してみました。これは、など、CD-ROM、コンパクトディスクを、返します
AppleGrew

2
pushdおよびpopdコマンドも確認することをお勧めします。私はそれらなしでは生きられませんでした。
ブレットヘイル

2
@ nm-cd外部バイナリではなく、シェルに組み込まれているコマンドです。ヒントman bash
jordanm 2012年

私はman cd私のシステム(Gentoo)にあります、それは言う:This manual page is part of the POSIX Programmer's Manualなど。あなたのものが欠けているならば、あなたはいつでもグーグルすることができますman cd
N。「代名詞」m。

回答:


127

引数としてダッシュが1つ指定されている場合は、の値に置き換えられますOLDPWD

これOLDPWDcdコマンドによって設定され、前の作業ディレクトリです。


2
ありがとう。これは短く、プログラマーの観点からは完全でした。
AppleGrew 2012年

-ファイルとして提供するとどうなりますか。
viveksinghggits

あなたが使用することができます@viveksinghggitscd ./-またはそれを削除するためにあなたがそれを逃れることができますrm -fr -- -
サンドロ・ムンダ

20

cd - 以前のディレクトリに戻ります。

例えば:

marcelo @ marcelo:〜$ cd / opt
marcelo @ marcelo:/ opt $ cd / usr / bin
marcelo @ marcelo:/ usr / bin $ cd-
/ opt
marcelo @ marcelo:/ opt $ 

私は/ optにいて、/ usr / binに変更してから、/ optに戻りました。 cd -


10

cd - 最後のディレクトリに戻ります。

$ cd ~/Desktop
$ pwd
/Users/daknok/Desktop
$ cd /
$ pwd
/
$ cd -
$ pwd
/Users/daknok/Desktop

6

cd - 以前のディレクトリに戻ります。

私が入っている/usr/と言って、私はタイプしますcd /var/local/someplace/else

それから私は使用しますcd -私はに戻ります/usr


6

マニュアルより

-の引数は$ OLDPWDと同等です。CDPATHからの空でないディレクトリ名が使用されている場合、または-が最初の引数であり、ディレクトリの変更が成功した場合、新しい作業ディレクトリの絶対パス名が標準出力に書き込まれます。ディレクトリが正常に変更された場合、戻り値はtrueです。それ以外の場合はfalse

したがって、-$OLDPWD、シェルがあった最後のディレクトリを保持し、前のcd呼び出しによって設定された、と同等です。



2

cd-最後のディレクトリに戻ります。例えば

cd ~/Documents
cd ~
cd /

これで「/」になり、「cd-」を実行すると「〜」になります。ところで、もう一度「cd-」を実行すると、「/」に戻りますが、「〜/ Documents」には戻りません


-1

「現在のディレクトリ」は、bash cdterminalコマンドの意味です。「このディレクトリに私を置いておく」という意味です


cdは「ディレクトリの変更」を意味します!
Reyhaneh Trb
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.