&オペレータは、バックグラウンドに処理を送ります。cdあなたがそれを実行してバックグラウンドに送信され、引数なしで実行することができます。マニュアルページを見る場合:
名前
cd-シェルの作業ディレクトリを変更します。
あらすじ
cd[ -L| -P] [ dir ]
説明
シェルの作業ディレクトリを変更します。
現在のディレクトリをDIRに変更します。デフォルトのDIRはHOMEシェル変数の値です。
この変数CDPATHは、DIRを含むディレクトリの検索パスを定義します
。の代替ディレクトリ名はCDPATH、コロン(:)で区切られます。
nullのディレクトリ名は、現在のディレクトリと同じです。DIRがスラッシュ(/)で始まる場合、CDPATH使用されません。
ディレクトリが見つからず、シェルオプションcdable_varsが設定されている場合、その単語は変数名と見なされます。その変数に値がある場合、その値がDIRに使用されます。
オプション:
-Lシンボリックリンクをたどる
-Pように強制するシンボリックリンクをたどらないで物理ディレクトリ構造を使用する
デフォルトでは、-L指定された場合と同様にシンボリックリンクをたどります。
終了ステータス:
ディレクトリが変更された場合は0を返します。それ以外の場合はゼロ以外。
こちらもご覧ください
bash(1)
実装
GNU bash、バージョン4.1.5(1)-release(i486-pc-linux-gnu)
Copyright(C)2009 Free Software Foundation、Inc.
License GPLv3 +:GNU GPL version 3以降
引数はオプションです。そう
cd &として処理され
cd、バックグラウンドに送信されます。cd引数なしで呼び出された場合、処理は必要ありません。したがって、「完了」(処理済み)としてバックグラウンドに移動します。
&
Bash &(アンパサンド)に関するいくつかの情報は、プロセスをフォークするために使用される組み込み制御演算子です。Bashのmanページから、「コマンドが制御オペレーターによって終了された場合&、シェルはサブシェルのバックグラウンドでコマンドを実行します」。
対話型シェルにログインすると、プロセスにジョブ番号が割り当てられ、子PIDが表示されます。以下のジョブ番号は1です。
bash$ sleep 30 &
[1] 3586
プロセスがフォークされると、子PIDが特殊変数に格納されることに注意してください $!
bash$ echo $!
3586
次のように、ジョブ番号でジョブを終了できます。
bash$ jobs
[1]+ Running sleep 30 &
bash$ kill %1
[1]+ Terminated sleep 30
bash$