その表現は異なる意味を持つシェルスクリプト「$」記号は異なります
特別な識別子 | 意味 |
$ 0 | スクリプトファイルの現在の名前 |
$ N | 引数は、スクリプトまたは関数に渡されました。Nはパラメータの数を表す数値です。 例えば、最初のパラメータは、$ 1、$ 2は第二パラメータであります |
$# | スクリプトや関数に渡される引数の数 |
$ * | すべてのパラメータのスクリプトまたは関数に渡されました |
$ @ | すべてのパラメータのスクリプトまたは関数に渡されました |
$? | 前のコマンドの終了ステータス |
$$ | シェルの現在のプロセスID |
$() | そして `(バッククォート)コマンドは、同じの使用を置き換えるために使用されます |
$ {} | 参照変数分割の境界線 |
注:$ *と$ @は「()「$ 1の形のすべてのパラメータの出力」「$ 2」...「$関数やスクリプトのすべてのパラメータに、渡された、二重引用符ではないことが含まれている」は、発現N」です。別々の$ @「になる各パラメータ、;しかし、彼らは二重引用符(「」)であるときに含まれる、「$ * $ 1 $ 2 ... $ n」は、すべてのパラメータの形式で出力」「全体としてすべてのパラメータ、にをリセット」 「$ 1」「$ 2」...「$ n」をの形ですべての出力パラメータ
#!/ binに/ bashの エコー " ファイル名$ 0が" エコー " 最初のパラメータ$ 1 "は エコー " $$ PID " エコー " のparamの$#の合計numは" エコー " 最後のステータス$を?" エコー " の$ @を" エコー " $ * "
実行ハロー./1.sh mayuan
ファイル名./ 1。SH 最初PARAMハロー PID 142 PARAMの合計NUM 2 最後ステータス0 mayuanハロー ハローmayuan