关于shell:检查传递给bash脚本和进程值的标志

Check for flag passed to a Bash script and process value

本问题已经有最佳答案,请猛点这里访问。

我有一个bash脚本,在其中我想检查一个带有值的标志是否传递给它,然后在变量中使用该值。类似于此(伪代码):

1
file.sh -c 1.0.0

在file.sh中:

1
2
3
4
5
6
7
#!/bin/bash

get flag:
if flag 'c' then
curl c
else
curl 'something else'

最理想的方法是什么?


尝试以下操作

1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/bash


while getopts":c" opt; do
 case $opt in
 c)
    echo"-c was triggered!">&2
    ;;
 \?)
    echo"Invalid option: -$OPTARG">&2
    ;;
 esac
done