码迷,mamicode.com
首页 > 其他好文 > 详细

Bash 脚本 getopts为什么最后一个参数取不到

时间:2014-11-19 01:53:24      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:linux   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

Bash 脚本 getopts为什么最后一个参数取不到

标签:linux   bash   getopts   

原文地址:http://blog.csdn.net/hongweigg/article/details/41249749

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!