bash增加命令行参数

使用getopt

示例如下:

bash 复制代码
TEMP=`getopt -o j: --long job:,install -- "$@"`
eval set -- "$TEMP"

INSTALL=
PACKAGE=
JOB_NUM=$(nproc)

while true ; do
        case "$1" in
                --install) INSTALL="ON"; shift ;;
                -j | --job) JOB_NUM=$2; shift 2;;
                --) shift ; break ;;
                *) echo "Internal error!" ; exit 1 ;;
        esac
done
# echo "options:INSTALL("$INSTALL"),PACKAGE("$PACKAGE"),JOB_NUM("$JOB_NUM")"
  • -o: 表示短选项,多个选项之间没有分割符。
    • 注:会有:或者::, 前者表示一定有值,后者表示可有值,或没有值
  • --long: 表示长选项,也可以使用 -l,多个选项之间用,分割
  • j:: 表示选项j一定要带值
  • install: 表示不带选项
相关推荐
itmigrate11 小时前
前端项目里,Object.is 并不是 === 的平替
前端
小大宇12 小时前
Vue知识点6-computed计算属性
前端·javascript·vue.js
程序员海军13 小时前
尤雨溪 : Vue 4 已经在规划中了!
前端·javascript·vue.js
2601_9499706913 小时前
HumanizeDuration 跨端三方库仓颉适配全流程
前端·javascript·flutter
风骏时光牛马14 小时前
后端服务接口开发与性能优化
前端
kyriewen15 小时前
我让 4 个 AI 互相 review 代码,最温柔的那个下手最狠
前端·程序员·ai编程
计算机魔术师15 小时前
493家公司白砸AI钱?Apollo这组数据戳破了幻觉
前端
IT_陈寒15 小时前
Java静态变量初始化坑得我头皮发麻
前端·人工智能·后端
天外飞雨道沧桑15 小时前
我在浏览器里练了一个 792 参数的大模型,它学会了补全 JavaScript
开发语言·javascript·ai·ecmascript·ai编程
柳杉15 小时前
用 Codex 完成智慧高速 3D 可视化大屏,从 18 张行业设计稿到可交互的运行监测中心
前端·ai编程·数据可视化