温馨提示×

linux getopts循环处理所有选项

小樊
87
2024-07-26 18:06:12
栏目: 智能运维

在Linux中,可以使用getopts命令来处理命令行选项。getopts命令可以解析命令行选项,并将其存储在变量中,然后可以在脚本中使用这些变量来执行相应的操作。

以下是一个示例脚本,可以循环处理所有命令行选项:

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

在这个示例中,通过while循环和getopts命令,可以处理-a、-b和-c三个选项。对于每个选项,可以在case语句中执行相应的操作。如果选项无效或者缺少参数,会显示相应的错误消息。

要运行这个脚本并传入选项,可以使用类似如下的命令:

./script.sh -a value1 -b value2 -c value3

这样就可以按顺序处理所有的选项,并执行相应的操作。

0