1
gastlygem 2013-10-16 16:53:56 +08:00
如果需求很简单的话用这个应该就行:
if [ $1 == "x" ] || [ $1 == "-x" ] || [ $1 == "--x" ] 正经的复杂参数处理应该使用getopts,详细用法需要查查文档。 个人觉得用得最爽的还是Python加命令行处理库argparse或者别的啥。 |
2
lululau 2013-10-16 17:05:31 +08:00
getopts 功能太简单,不支持长选项, getopt 命令可移植性又不好,所以我觉得像包含了长选项等等比较复杂的命令行选项处理的话,直接交给 ruby/python 等脚本语言来处理吧,别用 shell 写了
|
3
hitsmaxft 2013-10-16 20:48:54 +08:00
ARG_NUM="${#@[@]}"
|
4
hitsmaxft 2013-10-16 21:03:33 +08:00
如果是要涉及到统计 -xx 的个数,顺手写了个工具函数
function test () { count=0 ; for arg in "${@[@]}" ; do [[ "$arg" != "${arg#-}" ]] && count=$(( $count +1)) done echo $count } |
5
yboren 2013-10-16 22:22:01 +08:00
getopt或者getopt_long
|
7
yegle 2013-10-17 04:51:33 +08:00
|