シェルスクリプトに引数を取らせたい
C の実行ファイルに引数を取らせると便利
だったのと同様に、Cシェルスクリプトにも引数を取らせると便利です。
C シェルスクリプトファイルでは、引数は argv[1] などとして確保されます。
第1引数が argv[1],第2引数が argv[2] などです。
argv に関する参照法をまとめると、次のようになります。
記法 意味
---------------------------------
$#argv 引数の数
$argv[*] すべての引数
$argv $argv[*] と同じ
$* $argv[*] と同じ
$argv[1-n] 引数 1 から n
$0 プログラムの名前
$argv[n] 引数 n (1 <= n <= $#argv)
$1 $2 ... $9 $argv[1] から $argv[9] と同じ
$argv[$#argv] 最後の引数
---------------------------------
$argv[0] は正しくありませんので注意して下さい。
たとえば、次のようなスクリプトファイル test.sh を考えます。
---------------------------------
echo $#argv
echo $argv[1]
echo $argv[2]
---------------------------------
これを実行すると、次のようになります。
---------------------------------
% ./test.sh hoge hero
2
hoge
hero
---------------------------------