getopts的使用】的更多相关文章

在编写shell脚本中,经常要处理一些输入参数,在使用过程中发现getopts更加方便,能够很好的处理用户输入的参数和参数值.   getopts用于处理用户输入参数,举例说明使用方法: while getopts :a:b:cdefg opt; do     case $opts in         a) do sth;    ......         cde) do another;     esac done   几个重要变量: OPTIND:getopts使用OPTIND作为索引,…
http://blog.sina.com.cn/s/blog_81c2cf020100v0wh.html http://www.cnblogs.com/xiangzi888/archive/2012/04/03/2430736.html 获取UNIX类型的选项: unix有一个优点就是标准UNIX命令在执行时都具有相同的命令行格式: command -options parameters 如果在执行Shell程序也采用上述格式,Bourne Shell中提供了一条获取和处理命令行选项的语句,即g…
getopts是一条获取和处理命令行选项的语句,格式为getopts option_string variable .其中option_string中包含一个有效的单字符选项,若getopts命令在命令行中发现了连字符,那么它将用连字符后面的字符同option_string相比较.若有匹配,则把变量variable的值设为该选项.若无匹配,则variable设为?.当getopts发现连字符后面没有字符,会返回一个非零的状态值.Shell程序中可以利用getopts的返回值建立一个循环. 有时侯…
一.getopts 简介 由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高.使用内部命令 getopts 可以很方便地处理命令行参数.一般格式为: getopts options variable getopts 的设计目标是在循环中运行,每次执行循环,getopts 就检查下一个命令行参数,并判断它是否合法.即检查参数是否以 - 开头,后面跟一个包含在 options 中的字母.如果是,就把匹配的选项字母存在指定的变量 variable 中,并返回退出状态0:如果 - 后面的字…
今天是WEBSOCKET,, 先完成一个SHELL的GETOPS,周一就用得着. #!/bin/bash echo "usage: ./$0 -t (prism|opscripts)" function scp_prism() { echo "scp_prism()" } function scp_opscripts() { echo "scp_opscripts()" } while getopts t:h OPT do case $OPT i…
getopt示例 #!/bin/bash aflag=no args=`getopt a: $@` ]; then echo 'Usage: ...' exit fi set -- $args ] do case "$1" in (-a) ;; (--) shift; non_option_arguments=$@; break;; (-*) >&; exit ;; (*) break;; esac shift done getopts示例 #!/bin/bash whi…
Shell中的getopts和getopt用法 1.getopts getopts(shell内置命令)不能直接处理长的选项(如:--prefix=/home等),getopts有两个参数,第一个参数是一个字符串,包括字符和":",每一个字符都是一个有效的选项,如果字符后面带有":",表示这个字符有自己的参数.getopts从命令中获取这些参数,并且删去了"-",并将其赋值在第二个参数中,如果带有自己参数,这个参数赋值在"optarg&…
getopts的使用 语法格式:getopts [option[:]] [DESCPRITION] VARIABLE option:表示为某个脚本可以使用的选项 ":":如果某个选项(option)后面出现了冒号(":"),则表示这个选项后面可以接参数(即一段描述信息DESCPRITION) VARIABLE:表示将某个选项保存在变量VARIABLE中 getopts是linux系统中的一个内置变量,一般用在循环中.每当执行循环是,getopts都会检查下一个命令选…
例子: while getopts ":e:s:pd:l" arg; do case $arg in e) ghs_env=$OPTARG ;; s) ghs_service=$OPTARG ;; p) proxy=`sed '/^PROXY=/!d;s/.*=//' config.properties` ;; d) dir_path=$OPTARG ;; l) if [ -d "log" ]; then rm -r log mkdir log else mkdir…
一.说明 shell中获取参数可以直接使用$1.$2等形式来获取,但这种方式有明显的限制:每个参数的位置是固定的.比如如果在设计上$1是ip地址$2是端口,那在执行时就必须第一个参数是ip第二个参数是端口而不能反过来. shell提供了getopt和getopts来解析参数,getopt比getopts功能强一些getopts比getopt简单一些:总体而言getopt和getopts都差强人意. 二.使用getopt解析参数 getopt比getopts强一些复杂一些:能在命令行中单独使用.支…