美文网首页
bash处理重复命令行参数

bash处理重复命令行参数

作者: CodingCode | 来源:发表于2021-06-26 03:25 被阅读0次

当命令行参数可以输入多个的时候如何处理。

办法是利用数组,分析到一个同名参数,则加入到数组,最后再来loop这个数组。
例如:

#!/bin/bash

OPTS=`getopt -o a: --long address: -n 'parse-options' -- "$@"`
if [ $? != 0 ] ; then echo "Failed parsing options." >&2 ; exit 1 ; fi
eval set -- "$OPTS"

ADDRESSES=()
while true; do
  case "$1" in
    -a | --address ) ADDRESSES+=("$2");  shift; shift ;;
    -- ) shift; break ;;
    * ) break ;;
  esac
done

for ADDRESS in "${ADDRESSES[@]}"; do
    echo "address=${ADDRESS}"
done

运行结果:

$ ./test.sh -a addr1 -a addr2 --address addr3
address=addr1
address=addr2
address=addr3

相关文章

  • bash处理重复命令行参数

    当命令行参数可以输入多个的时候如何处理。 办法是利用数组,分析到一个同名参数,则加入到数组,最后再来loop这个数...

  • getopts 解析bash 命令行参数

    getopts 解析bash 命令行参数 Shell脚本中的一项常见任务是解析命令行参数。 Bash提供了内置函数...

  • Bash里面$@和$*的区别

    Bash里面$@和$*的区别 $@和 $*通常在bash处理命令行参数的时候使用。 相同点 大部分场景下他们是相同...

  • linux shell命令行选项与参数用法详解--getopts

    在bash中,可以用以下三种方式来处理命令行参数: 直接处理:使用$1,$2,...,$n进行解析 getopts...

  • 常用的npm包

    命令行参数处理 nodejs 脚本,命令行参数处理,接受参数parse 可以使用 minimist 参数提示 co...

  • Shell 脚本编程(高级篇)

    高级篇 一、处理用户输入 1. 读取脚本参数 Bash Shell 将命令行中传递给脚本的参数赋值给一组特殊的变量...

  • shell脚本学习- 命令行参数处理

    在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景。 1.直接处理,依次对2,...,$...

  • Linux Shell编程之Bash中的位置参数

    什么是位置参数 位置参数指的是 shell 脚本的命令行参数,同时也表示 shell 函数的函数参数。Bash中的...

  • shell 入门 04 处理用户输入

    处理用户输入 bash shell提供了一些不同的方法来从用户处获得数据,包括 命令行参数(添加在命令后的数据) ...

  • 九、处理用户输入

    简单目录 1.命令行参数 2.处理命令行选项和命令行参数参数 3.read命令获取用户输入 1.命令行参数 在命令...

网友评论

      本文标题:bash处理重复命令行参数

      本文链接:https://www.haomeiwen.com/subject/vjmayltx.html