sh 庆典のオプション引数実装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 庆典のオプション引数実装相关的知识,希望对你有一定的参考价值。

#!/bin/bash

readonly THIS_SCRIPT_NAME=`basename $0`

function main() {
  for opt in "$@"
  do
    case "$opt" in
      '-h'|'--help' )
        usage
        exit 1
        ;;
      '-a'|'--actor' )
        if [[ -z "$2" ]] || [[ "$2" =~ ^-+ ]]; then
          echo "$THIS_SCRIPT_NAME: options requires an argument -- $1" 1>&2
          exit 1
        fi
        readonly ACTOR="$2"
        export ACTOR
        shift 2
        ;;
      '-x' )
        if [[ -z "$2" ]] || [[ "$2" =~ ^-+ ]]; then
          echo "$THIS_SCRIPT_NAME: options requires an argument -- $1" 1>&2
          exit 1
        fi
        local -r x="$2"
        shift 2
        ;;
      '-y' )
        if [[ -z "$2" ]] || [[ "$2" =~ ^-+ ]]; then
          echo "$THIS_SCRIPT_NAME: options requires an argument -- $1" 1>&2
          exit 1
        fi
        local -r y="$2"
        shift 2
        ;;
      '--scale-mv' )
        if [[ -z "$2" ]] || [[ "$2" =~ ^-+ ]]; then
          echo "$THIS_SCRIPT_NAME: options requires an argument -- $1" 1>&2
          exit 1
        fi
        local -r scale_mv="$2"
        shift 2
        ;;
      '--scale-vxace' )
        if [[ -z "$2" ]] || [[ "$2" =~ ^-+ ]]; then
          echo "$THIS_SCRIPT_NAME: options requires an argument -- $1" 1>&2
          exit 1
        fi
        local -r scale_vxace="$2"
        shift 2
        ;;
      -*)
        echo "$THIS_SCRIPT_NAME: Illegal option -- $1" 1>&2
        exit 1
        ;;
    esac
  done

  # TODO: ここに実装を書く
}

# usage は使い方ヘルプ関数です。
function usage() {
  cat << EOL 1>&2
  $THIS_SCRIPT_NAME は配布用zipを生成します。

  Globals:
  None

  Arguments:
  -h            ヘルプ
  -a, --actor   アクターファイル名
  -x            トリミングする座標x
  -y            トリミングする座標y
  --scale-mv    MV用の画像の拡縮(%)
  --scale-vxace VXACE用の画像の拡縮(%)

  Returns:
  None

EOL
  return 1
}

main "$@"

以上是关于sh 庆典のオプション引数実装的主要内容,如果未能解决你的问题,请参考以下文章

text lsのオプション#memo

text emacs dird lsへのオプション#memo

html GoogleMap的でルート検索のオプションを実験

sh GCCのsysrootオプションについて调べてみたref:http://qiita.com/maskedw/items/e73df32007934e75d9e3

text gcc-rxコマンドラインオプション#memo

markdown sedコマンドの拡张正规表现オプションで非法选项 - rエラー