小编Ric*_*ado的帖子

Bash Shell - 具有多个字母的阅读选项

我正在开发一个允许用户设置选项的shell脚本.如果用户单独指定选项,则脚本正常工作.例如:

./my_file.sh -r -l directory1 directory2
Run Code Online (Sandbox Code Playgroud)

上面的命令工作正常,但是如果用户指定以下命令,则我的脚本不起作用:

编辑:我的意思是,-l如果用户输入以下命令,则无法识别该选项

./my_file.sh -rl directory1 directory2
Run Code Online (Sandbox Code Playgroud)

这是我用来阅读选项的代码

while getopts 'lvibrd:v' flag; do
  case "${flag}" in
    l) option_l=true
       shift ;;
    v) option_v=true 
       shift ;;
    i) option_i=true
       shift ;;
    b) option_b=true
       shift ;;
    r) option_r=true
       shift ;;
    d) option_d=true
       shift ;;
    *) echo "Invalid options ${flag}" 
       exit 1 ;;
  esac
done
Run Code Online (Sandbox Code Playgroud)

有没有办法用多个字母读取选项,例如-rl,使用类似的代码?先感谢您.

unix bash shell

0
推荐指数
1
解决办法
275
查看次数

标签 统计

bash ×1

shell ×1

unix ×1