短参数一般在前面加单破折号(-),长参数使用双破折号(--),-a选项可以使长参数支持单破折号(-) 如果参数必须赋值,在后面加冒号(:), -n test_getopt.sh:指定程序名为test_getopt.sh,如果不设置,默认使用getopt -o | --options:短选项 -l | --longoptions:长选项 getopt接收所有输入后会返回一个状态码,0表...
直接处理:使用$1,$2,...,$n进行解析 getopts:单个字符选项的情况(如:-n 10 -f file.txt等选项) getopt:可以处理单个字符选项,也可以处理长选项long-option(如:--prefix=/home等) 总结:小脚本直接处理即可,getopts能处理绝大多数的情况,getopt较复杂、功能也更强大。 1、直接处理 使用以下几个变量进行处理:...
getopt [options] [--] optstring parameters getopt [options] -o|--options optstring [options] [--] parameters 选项: -a, --alternative 允许长选项以 - 开始 -h, --help这个简短的用法指南 -l, --longoptions <长选项> 要识别的长选项 -n, --name <程序名> 将错误报告给的程序名 -o, --opt...
getopts是另一个解析命令行参数的工具。它是Bash的内部命令。 它的优势在于: 不需要通过一个外部程序来处理位置参数 可以很容易地设置用来解析的Shell变量 getopts 定义在 POSIX 中 不支持长选项: getopts 不能解析 GUN 风格的长选项(--long),也不能解析 XF86 风格的长选项(-long) getopt 是将选项和参数处理后...
在运行程序时,可能需要根据不同的条件,输入不同的命令行选项来实现不同的功能。目前有短选项和长选项...
由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高。为此,C提供了getopt/getopt_long等函数,C++的boost提供了Options库,在shell中,处理此事的是getopts和getopt。 本节首先介绍getopts命令。 1 getopts 1. getopts命令内建于bash shell中 getopts命令能够和已有的shell参数变量默契配合 ...
语法--如果您根本不想要任何短选项变量--不是很直观(您必须显式地将它们设置为空字符串)。
1、bash 内置的getopts: 先看简单的例子: #!/bin/bashwhile getopts 'd:Dm:f:t:' OPT; docase$OPTind)DEL_DAYS="$OPTARG";;D)DEL_ORIGINAL='yes';;f)DIR_FROM="$OPTARG";;m)MAILDIR_NAME="$OPTARG";;t)DIR_TO="$OPTARG";;?)echo"Usage:`basename$0`[options] filename"esacdoneshift$(($OP...
http://yejinxin.github.io/parse-shell-options-with-getopt-command 三、使用getopts解析参数 getopts比getopt弱一些简单一些:不能在命令行中单独使用、不支持长选项格式、不支持选项值可选。更多说明见注释。 #!/bin/bash usage(){ echo “ Usage:
bash-2.05a$ ./g -abc foo Before getopt -abc foo After getopt -->-a -->-b -->-c -->foo -->-- We start with two arguments, and "getopt" breaks apart the options and puts each in its own argument. It also added "--". ...