Chinaunix首页 | 论坛 | 博客
  • 博客访问: 485199
  • 博文数量: 164
  • 博客积分: 4024
  • 博客等级: 上校
  • 技术积分: 1580
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-10 16:27
文章分类

全部博文(164)

文章存档

2011年(1)

2010年(108)

2009年(55)

我的朋友

分类:

2009-10-21 22:01:21

shift命令  getopts
一。shift
每次将参数值向左偏移N位
#!/bin/bash
#opt2
usage()
{
echo "usage :`basement $0` filenames"
totalline=0
if[ $# -lt 2 ]
then
usage
fi
while[ $# -ne 0 ]
do
line=`cat $1|wc-l`
echo "$1:${line}"
totalline=$[ $totalline+$line ]
shift
done
echo "--------"
echo "total :${totalline}"
 
 
二。getopts
获得多个命令行参数
#!/bin/bash
ALL=false
HELP=false
FILE=false
VERBOSE=false
while getopts ahfvs OPTION
do
case $OPTION in
a)
ALL=true
echo "ALL is $ALL"
;;
h)
HELP=true
echo "HELP is $HELP"
;;
f)
FILE=true
echo "FILE is $FILE"
;;
c)
echo "c is $c"
;;
\?)echo "`basename $0` -[a h f v] -[c value] file"
;;
esac
done
 
./opt -a -h -f -v -c
 
如果给c赋值需要在ahfvc  c后面加:说明需要赋值 如下
#!/bin/bash
ALL=false
HELP=false
FILE=false
VERBOSE=false
while getopts ahfvc: OPTION
do
case $OPTION in
a)
ALL=true
echo "ALL is $ALL"
;;
h)
HELP=true
echo "HELP is $HELP"
;;
f)
FILE=true
echo "FILE is $FILE"
;;
c)
c=$var
echo "c is $c"
;;
\?)echo "`basename $0` -[a h f v] -[c value] file"
;;
esac
done
 
./opt -a -h -f -v -c value
阅读(625) | 评论(0) | 转发(0) |
0

上一篇:听课笔记6--shell 函数

下一篇:特蕾莎修女

给主人留下些什么吧!~~