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

getopt getopts

1.使用 getopts optstrings variable 每次调用它时,它只处理一个命令行上检测到的参数,处理完所有参数后,它会退出并返回一个大于0的退出状态码。...如果选项需要跟一个参数,则在optstrings后跟一个:即可,要去掉错误消息的话,在optstrings前加:,getopts命令将当前参数保存在命令行中定义的variable中; getopts有两个内置变量...,OPTARG:保存选项后的参数值,OPTIND:保存了参数列表中正在处理的参数位置; getopts命令解析选项时,会移除开头的-(单破折号); 选项和参数值连在一起时,getopts也能分别识别它们...,所以使用时选项和参数直接可以不用加空格; getopts能将命令行上未定义的选项统一输出成问号。...while getopts :ab:c opt do case “$opt” in a)cmd1;; b)cmd2;with value $OPTARG;; c)cmd3; *);; esac

60710

Linux:中使用getopts处理脚本参数

在Linux中编写Shell脚本时,处理命令行参数是一个常见且重要的任务。getopts是一个用于解析命令行选项的内置命令,它能够帮助我们简化脚本参数的处理过程。...本文将详细讲解如何在Linux脚本中使用getopts来处理脚本参数,并通过示例来展示其实际应用。 一、getopts概述 getopts是一种用于解析命令行参数的工具。...四、示例讲解 以下是一个示例脚本,通过getopts处理-a、-b和-c选项,其中-b选项需要一个参数: sh #!.../bin/bash # 初始化变量 a_flag=0 b_value="" c_flag=0 # 解析命令行选项 while getopts "ab:c" opt; do case $opt in...希望本文能帮助你更好地理解和使用getopts来处理Linux脚本参数。

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

    Linux Shell编程入门

    while getopts vc: OPTION do case $OPTION in c) COPIES=$OPTARG      ehco "$COPIES";; v) echo "suyang";...exit 1;; esac done 上面的getopts类似于C语言提供的函数getopts,在Shell Script中,getopts经常和while语句联合起来使用。...getopts的语法如下: getopts option_string variable option_string中包含一串单字符选项,若getopts在命令行参数中 发现了连字符,那么它会将连字符之后的字符与...有时候,选项还会带一个值,例如-c5等,这时要在option_string中该选项字母后面加上一个冒号,getopts发现冒号 后,会读取该值,然后将该值放入特殊变量OPTARG中。...参考资料: Linux 基础 shell脚本编程 Linux 基础 shell命令 Linux 基础 软件包管理及shell命令 Linux多线程编程

    1.6K10

    Linux Shell编程零基础入门

    从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。...Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin...while getopts vc: OPTION do case $OPTION in c) COPIES=$OPTARG ehco “$COPIES”;; v) echo “suyang”;; ?)...exit 1;; esac done 上面的getopts类似于C语言提供的函数getopts,在Shell Script中,getopts经常和while语句联合起来使用。...有时候,选项还会带一个值,例如-c5等,这时要在option_string中该选项字母后面加上一个冒号,getopts发现冒号 后,会读取该值,然后将该值放入特殊变量OPTARG中。

    1.5K10

    Linux Shell编程入门

    从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。...Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin...while getopts vc: OPTION do case $OPTION in c) COPIES=$OPTARG      ehco "$COPIES";; v) echo "suyang";...exit 1;; esac done 上面的getopts类似于C语言提供的函数getopts,在Shell Script中,getopts经常和while语句联合起来使用。...有时候,选项还会带一个值,例如-c5等,这时要在option_string中该选项字母后面加上一个冒号,getopts发现冒号 后,会读取该值,然后将该值放入特殊变量OPTARG中。

    1.8K20

    Linux Shell编程入门

    从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。...Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin...while getopts vc: OPTION do case $OPTION in c) COPIES=$OPTARG      ehco "$COPIES";; v) echo "suyang";...exit 1;; esac done 上面的getopts类似于C语言提供的函数getopts,在Shell Script中,getopts经常和while语句联合起来使用。...有时候,选项还会带一个值,例如-c5等,这时要在option_string中该选项字母后面加上一个冒号,getopts发现冒号 后,会读取该值,然后将该值放入特殊变量OPTARG中。

    4.2K20

    统计文件夹下某类文件大小的小脚本

    == "-h" ]]; then help exit 0 fi # INCLUDE_FILE_TYPE="" # EXCLUDE_FILE_TYPE="" # echo $* while getopts...done echo "文件总大小为:$((totalSize/1024))M" fi 基础命令 这个脚本难点在于命令行参数的处理,因为写这个脚本查阅了一些资料,主流的方案是使用下面两个命令: getopts...是 Linux 系统中的一个内置变量,一般通过循环的方式使用,每次循环 getopts 都会检查命令行选项,并将命令行选项的值爆存在 OPTARG 变量中 getopt 是一个外部命令,相较于 getopts...命令能够支持长参数,但是使用起来较 getopts 复杂 本文中因为参数比较少且没计划使用长参数,因此采用了 getopts 来处理选项和参数问题。...给你的shell脚本写一个--help文档 编写可接受选项和参数的shell脚本 getopts 的使用

    1.6K20

    Shell【脚本 04】传递参数的4种方式(位置参数、特殊变量、环境变量和命名参数)实例说明

    在Linux和类Unix操作系统中,这个字符序列用于指定脚本文件的解释器路径。...此时,如果这个文件具有可执行权限(例如755),系统会把它作为一个shell脚本来执行,使用的是默认的shell解释器(在大多数Unix/Linux系统中,这是Bash shell)。...Shell脚本是一种编程语言,可以用于在Unix/Linux系统上编写自动化任务,批量处理数据,系统管理等。.../script.sh a b c输出:The script name is ....getopts只能处理短选项,也就是只能使用一个字母来表示选项,如果要处理长选项,需要编写更多的代码。另外,getopts处理命令行参数时会把选项和参数分别处理,不能处理连续的选项,例如-abc。

    73510
    领券