今日のbashシェルスクリプトで、スクリプトの最後に以下のコマンドがあることに気づきました。私は何であるかを知っていますcdが、その後のダッシュの重要性に気づいていません。
cd -
これは何を意味するのでしょうか?グーグルは素朴に切り捨てる-ので、私はその答えを見つけることができません。
今日のbashシェルスクリプトで、スクリプトの最後に以下のコマンドがあることに気づきました。私は何であるかを知っていますcdが、その後のダッシュの重要性に気づいていません。
cd -
これは何を意味するのでしょうか?グーグルは素朴に切り捨てる-ので、私はその答えを見つけることができません。
pushdおよびpopdコマンドも確認することをお勧めします。私はそれらなしでは生きられませんでした。
cd外部バイナリではなく、シェルに組み込まれているコマンドです。ヒントman bash。
man cd私のシステム(Gentoo)にあります、それは言う:This manual page is part of the POSIX Programmer's Manualなど。あなたのものが欠けているならば、あなたはいつでもグーグルすることができますman cd。
回答:
引数としてダッシュが1つ指定されている場合は、の値に置き換えられますOLDPWD。
これOLDPWDはcdコマンドによって設定され、前の作業ディレクトリです。
-ファイルとして提供するとどうなりますか。
cd ./-またはそれを削除するためにあなたがそれを逃れることができますrm -fr -- -
cd - 最後のディレクトリに戻ります。
$ cd ~/Desktop
$ pwd
/Users/daknok/Desktop
$ cd /
$ pwd
/
$ cd -
$ pwd
/Users/daknok/Desktop
ここで見つけた男から:http://ss64.com/bash/cd.html
Quickly get back
$ cd -
「現在のディレクトリ」は、bash cdterminalコマンドの意味です。「このディレクトリに私を置いておく」という意味です
man cd、私のマシンではありません、参考までに。