首页
学习
活动
专区
圈层
工具
发布

【C】解析命令行参数--getopt和getopt_long

前言 在程序中一般都会用到命令行选项, 我们可以使用getopt 和getopt_long函数来解析命令行参数 getopt getopt主要用来处理短命令行选项, 例如....char * const argv[], const char *optstring, const struct option *longopts...int *longindex); 其中 argc , argv , optstring 和getopt中的含义一样, 下面解释一下longopts 和longindex longopts longopts...如果flag不为NULL, getopt_long会返回0, 并且将val的值存储到flag中 val - 将要被getopt_long返回或者存储到flag指向的变量中的值 下面是longopts的一个示例...遍历到该条选项时, getopt_long 返回值为字符v对应的ascii码值. longindex longindex表示长选项在longopts中的位置, 例如在上面的示例中, version 对应的

98210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    getopt(1) command

    注意,与 getopt 类似的一个命令 getopts 是 Shell 内建命令,其功能没有 getopt 强大,只支持短选项,不能解析长选项。...2.格式 getopt OPTSTRING PARAMETERS getopt [OPTIONS] [--] OPTSTRING PARAMETERS getopt [OPTIONS] -o|--options...3.选项 getopt 命令本身支持多种选项来控制其行为: -a, --alternative 允许长选项以单个'-'开头 -l, --longoptions LONGOPTS 指定要识别的长(多字符...每个长选项名后面可以跟一个冒号,表示它有一个必需的参数,后面跟两个冒号,表示它有一个可选的参数 -n, --name PROGNAME 用于出错时显示的程序名称。...如果找不到此选项,则使用getopt的第一个不以'-'开头的参数作为短选项字符串。每个短选项字符后面可以跟一个冒号,表示它有一个必需的参数。后面跟两个冒号,表示它有一个可选参数。

    45310

    PHP 配置 register_argc_argv 小结

    为了解决这个问题,php 提供了一个函数getopt(),这个函数就是专门用来处理复杂命令行参数的内置函数,原型如下: getopt ( string $options [, array $longopts...x选项,只允许a-z,A-Z,0-9 longopts: 选项数组,每个数组元素会被作为选项字符串,匹配了以两个连字符(–)传入到脚本的选项,比如opt识别--opt optind(>=PHP7.1.0...php // getopt.php $test = getopt('a:b:c:de'); var_dump($test); 然后执行php getopt.php -apanda -chello -...php $argv = getopt('s:t:'); var_dump($argc); var_dump($argv); 以上是需要知道的背景知识,知道这个下面我们就可以做很多事情了。...https://www.php.net/getopt https://www.php.net/manual/zh/function.ini-set.php https://www.php.net/manual

    2.9K31

    Python getopt模块函数用法小

    官方模块说明:https://docs.python.org/2/library/getopt.html#module-getopt     shell中几乎所有的命令输入的时候都可以携带合适的参数来扩展其功能...函数用法格式:getopt.getopt(args, options[, long_options]) args:命令行参数,一般是sys.argv[1:],0为脚本本身的名字; options:shortopts...短格式(“-”) long_options:longopts 长格式(“--”) 命令行示例: python config.py -h -d 13 -c allow --help #!...getopt.GetoptError为getopt模块函数异常错误,这里捕获该异常并打印出相关信息等。     ...sys.argv[1:]为获取到的命令行参数,赋值给options,options变量在getopt分析完后实际包含两个值,参数和参数值,args值为不属于getopt函数分析内的参数和参数值,例如python

    93420

    最全总结 | 聊聊 Python 命令行参数化的几种方式!

    我们经常需要结合命令行参数传入一些变量参数,使项目使用更加的灵活方便 本篇文章我将罗列出构建 Python 命令行参数的 4 种常见方式 它们分别是: 内置 sys.argv 模块 内置 argparse 模块 内置 getopt...getopt 是 Python 中一个内置标准模块,可以结合 sys.argv 模块,直接解析脚本运行时参数 使用格式:getopt(args,shortopts,longopts = []) 其中...args 参数列表,可以通过 sys.argv 获取,可以参考上面 shortopts 短参数组成的字符串 定义短参数,如果参数有值,需要在短参数后追加一个「 : 」符号 传参使用方式:-n 23 longopts...4_getopt.py -i 127.0.0.1 -u root -p 123456 -d mysqldb # 长参数 # python3 4_getopt.py --ip 127.0.0.1 -u...-i 127.0.0.1 -u root -p 123456 -d mysqldb # 长参数 python3 4_getopt.py --ip 127.0.0.1 --user root --pwd

    2.9K20
    领券