温馨提示×

Shell脚本中怎么处理命令行选项和参数

小亿
129
2024-04-10 11:14:40
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Shell脚本中处理命令行选项和参数通常使用getopts命令来实现,以下是一个简单的例子:

while getopts ":a:b:" opt; do
  case $opt in
    a)
      echo "Option a has value $OPTARG"
      ;;
    b)
      echo "Option b has value $OPTARG"
      ;;
    \?)
      echo "Invalid option: -$OPTARG"
      ;;
    :)
      echo "Option -$OPTARG requires an argument."
      ;;
  esac
done

shift $((OPTIND - 1))

echo "Remaining arguments: $@"

在这个例子中,getopts命令用来解析命令行选项,:后面跟着的字符表示需要参数的选项,opt保存当前解析到的选项,OPTARG保存选项的参数。case语句用来根据不同的选项做不同的处理。

使用shift $((OPTIND - 1))命令来移除已经解析过的选项,剩下的参数可以通过$@来获取。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:linux shell命令行选项与参数怎么使用

0