zoukankan      html  css  js  c++  java
  • Bash 脚本 getopts为什么最后一个參数取不到

    看以下的Bash脚本:

    #!/bin/bash
    interval=0
    count=0
    pid=""
    while getopts "p:d:n" arg
    do
            case $arg in
            p)
                    pid=$OPTARG
                    echo "pid: $pid"
                    ;;
            d)
                    interval=$OPTARG
                    echo "interval:$interval"
                    ;;
            n)
                    count=$OPTARG
                    echo "count:$count"
                    ;;
            ?)
                    echo "unkonw argument"
                    exit 1
                    ;;
            esac
    done

    发现最后一个參数n总是获取不到,为什么呢?

    原来,n后面少了一个冒号。參数都要要带上一个冒号。包含在最末尾的參数。

    正确的写法:

    while getopts "p:d:n:" arg

  • 相关阅读:
    tarjan algorithm
    最小生成树
    Manacher's Algorithm (马拉车算法)
    KMP
    Trie(字典树)
    Hash
    GDB调试
    图论
    扫描线
    STL
  • 原文地址:https://www.cnblogs.com/wzzkaifa/p/6747363.html
Copyright © 2011-2022 走看看