#navi(../)
* シェルスクリプトに渡された引数の数を取得する方法 [#rc7d61b4]
シェルスクリプトに引数を渡した場合、いくつの引数を渡したかを確認する方法を以下に記します。~
尚、本資料はbashにて動作確認を行いました。

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* 関連資料 [#y87da35f]
//-[[シェルスクリプトに渡された引数の数を取得する方法>逆引きシェルスクリプト/シェルスクリプトに渡された引数の数を取得する方法]]
-[[getoptsを利用して引数を取得する(bashビルドイン)>逆引きシェルスクリプト/getoptsを利用して引数を取得する(bashビルドイン)]]
-[[引数を配列に展開する方法>逆引きシェルスクリプト/引数を配列に展開する方法]]

* 引数の数を取得する [#b7234aff]
引数の数は''$#''に格納されています。
 $#

* 引数チェックをするサンプルシェルスクリプト [#l4ed2bbf]
以下のスクリプトは引数が2つの場合、引数を表示し、2つ以外の場合はusage関数を実行します。

** サンプルスクリプト [#d0a5cc3e]
#ref(argc.sh)

 #!/bin/bash
 
 function usage {
   echo Usage: `basename $0` value1 value2
   exit 1
 }
 
 if [ $# -eq 2 ]; then
   echo ARGV1: $1, ARGV2: $2
 else
   usage
 fi
 exit 0

** サンプルスクリプト実行例 [#dc69a2e8]
以下に引数が2つ以外の場合と引数が2つの場合の実行結果を記します。
- 引数なし
 $ ./argc.sh 
 Usage: argc.sh value1 value2
 $ echo $?
 1
- 引数が3つ
 $ ./argc.sh foo bar hoge
 Usage: argc.sh value1 value2
 $ echo $?
 1
- 引数が2つ
 $ ./argc.sh hello world
 ARGV1: hello, ARGV2: world
 $ echo $?
 0

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS