温馨提示×

linux getopts如何处理选项组合

小樊
83
2024-07-26 18:10:11
栏目: 智能运维

在Linux中,getopts是一个用来处理命令行选项的工具,可以用来解析命令行参数并获取对应的值。getopts默认情况下只能处理单个选项(比如-a),如果需要处理选项组合(比如-abcd),可以通过在getopts的选项字符串中添加冒号来实现。

下面是一个示例代码,演示如何使用getopts处理选项组合:

while getopts "abc:d:" opt; do
  case $opt in
    a) 
      echo "Option a"
      ;;
    b)
      echo "Option b"
      ;;
    c)
      echo "Option c with value $OPTARG"
      ;;
    d)
      echo "Option d with value $OPTARG"
      ;;
    \?)
      echo "Invalid option: -$OPTARG" >&2
      ;;
  esac
done

在上面的示例中,选项字符串"abc:d:" 中的冒号表示选项c和d需要一个参数值。这样,当用户输入"-cd value"时,getopts会正确解析选项组合,并将参数值赋给对应的选项。

总结:通过在getopts的选项字符串中添加冒号可以处理选项组合,并获取对应的参数值。

0