このエントリーをはてなブックマークに追加


シェルスクリプトに渡された引数の数を取得する方法

シェルスクリプトに引数を渡した場合、いくつの引数を渡したかを確認する方法を以下に記します。
尚、本資料はbashにて動作確認を行いました。


関連資料

引数の数を取得する

引数の数は$#に格納されています。

$#

引数チェックをするサンプルシェルスクリプト

以下のスクリプトは引数が2つの場合、引数を表示し、2つ以外の場合はusage関数を実行します。

サンプルスクリプト

#!/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

サンプルスクリプト実行例

以下に引数が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


添付ファイル: fileargc.sh 589件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:27:03