【问题标题】:getopt multiple line statements while parsing arguments解析参数时获取多行语句
【发布时间】:2018-09-15 21:52:51
【问题描述】:

这里有点麻烦。 我从来没有做过很长的选择,所以我正在尝试 getopt 而不是 getopts。

出于某种原因,它一直将shift 声明为无法识别的令牌。 有什么理由吗? 这也是getopt的正确实现吗?或者有更好的方法吗?

BASH 脚本如下:

FLAGS=$(getopt --long "help,user:" --name $PROGNAME -- "$@")
echo $FLAGS
eval set -- "$FLAGS"

while true; do
  case $1 in
    --help)
        usage()
        shift
        ;;
    *)
      shift
      exit 1
      ;;
  esac
  shift
done

【问题讨论】:

    标签: bash getopt getopts


    【解决方案1】:

    In Bash you don't call functions with brackets - usage() 应改为 usage

    【讨论】:

      猜你喜欢
      • 2019-11-05
      • 2016-07-29
      • 1970-01-01
      • 2015-11-19
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 2018-04-20
      • 2014-10-10
      相关资源
      最近更新 更多