WEB开发网
开发学院数据库MySQL shell里的括号的用法 阅读

shell里的括号的用法

 2007-11-11 16:03:04 来源:WEB开发网   
核心提示: 通常调用UNIX程序的格式是:command options files一些与传递给shell的参数相关的变量:$# 命令行参数的个数$? 调用命令的返回值$$ 当前进程的进程号$! 最后一个后台命令的进程号$0 命令行的第一个参数,也就是命令名$n 命令行的第
通常调用UNIX程序的格式是:
command options files一些与传递给shell的参数相关的变量:$# 命令行参数的个数$? 调用命令的返回值$$ 当前进程的进程号$! 最后一个后台命令的进程号$0 命令行的第一个参数,也就是命令名$n 命令行的第n个参数,如果要取超过9个参数${n}$* 所有的命令行参数,等于("$1 $2...")"$@" 所有的命令行参数,等于("$1" "$2"...)$_ 前一个命令的最后一个命令行参数
shell脚本的选项(option)解析

一般有两种主要的方法来分析传递给shell script的选项(option)。第一种方法是利用上述的shell variables和shift等命令,配合case命令来直接分析,在参数的个数比较少的情况下,这种方法比较常用。但如果参数数量比较多,就需要使用 getopts命令。

命令格式:

getopts option-string variable

getops解析命令行传递的参数的处理过程为:

1.getopts检查所有的命令行参数,查找以字符"-"开始的参数。

2.当找到以字符"-"开始的参数,将 "-"之后的字符串和option-string比较。

3.如果找到符合的匹配,则指定的变量被设置,否则,此变量被设成?字符。

4.重复1到3,直到所有的选项被处理。

5.当分析结束,getopts返回一个非0返回值,这常用做循环的判断条件。另外,当getopts结束时,它还将变量OPTIND设为最后一个参数的下标。

【注意】当选项后面需要跟一个附加的参数时(如-i intputfile),在option-string中需要在相应的option中加冒号(如i: )。在这种情况下,当解析到此选项时,附加的参数会被赋值给OPTARG变量。

举例:

下面的shell清单将能够分析:

-i 指定输入的文件名

-o 指定输出的文件名

-v 指定使用详细模式

shell script清单:

#!/usr/bin/ksh

USAGE="Usage: $0 '[-v] [-i] [filename] [-o] [filename]'"

VERBOSE=false

while getopts o:f:v OPTION ; do

case "$OPTION" in

o) OUTFILE="$OPTARG" ;;

i) INFILE="$OPTARG" ;;

v) VERBOSE=true ;;

\?) echo "$USAGE" ;

exit 1

;;

esac

done

echo Output file is $OUTFILE

echo Input file is $INFILE

echo In VERBOSE Mode:$VERBOSE

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:shell 括号 用法

编辑录入:coldstar [复制链接] [打 印]
赞助商链接