📅  最后修改于: 2023-12-03 15:29:35.090000             🧑  作者: Mango
在 Bash 脚本中,我们经常需要使用参数来传递输入和输出文件名,或是程序运行时所需要的参数。这些参数可以是必需的,也可以是可选的,本文主要介绍 Bash 可选参数。
Bash 可选参数指的是在运行脚本时,用户可以选择是否要输入的参数。这些可选参数可以是单个字符或者单词,用户可以以命令行的方式向脚本中传递这些参数。
使用 Bash 可选参数需要用到 getopts 工具。getopts 是一个内置的工具,它可以解析命令行参数并为脚本提供相应的选项。
以下是一个简单的示例:
#!/bin/bash
while getopts ":a:b:" opt; do
case $opt in
a) arg1="$OPTARG"
;;
b) arg2="$OPTARG"
;;
\?) echo "Invalid option -$OPTARG" >&2
;;
esac
done
echo "arg1 = $arg1"
echo "arg2 = $arg2"
在上面的示例中,我们使用了一个 while 循环来遍历解析命令行参数,使用 case 语句来处理每个选项。在每个选项的 case 子句中,我们可以将参数存储在一个变量中,以便稍后使用。
使用示例:
$ ./test.sh -a hello -b world
arg1 = hello
arg2 = world
在上面的示例中,我们向脚本传递了两个参数,-a 和 -b。注意,在每个选项后面都要紧跟着相应的参数。
在 Bash 中,可选参数可以帮助我们更好地控制程序的运行。使用 getopts 工具可以很容易地解析命令行参数。当然,这只是 Bash 可选参数的基础知识,你还可以掌握更高级的用法,例如处理多个选项,或是使用长选项等等。