在脚本内部可以使用shift
命令来让被传入脚本的变量值左移,依次处理每个参数。同时,可以使用getopts
命令来从命令行中读取和处理选项,在脚本中可以设置每个选项对应的参数。例如,下面是一个示例,可以通过两个参数传递一个数字,如果参数没有指定或者格式错误,脚本会提示正确使用方法。
#!/bin/bash
# 检查并解析命令行参数
if [ $# -ne 2 ] || ! [[ "$1" =~ ^[0-9]+$ ]] || ! [[ "$2" =~ ^[0-9]+$ ]]; then
echo "Usage: $0 "
exit 1
fi
# 从参数中读取数字
num1=$1
num2=$2
# 执行脚本
result=$((num1 + num2))
echo "Result: $result"
使用示例:
$ ./myscript.sh 3 4
Result: 7
$ ./myscript.sh 3 foo
Usage: ./myscript.sh
上一篇:Bash脚本参数包含空格无法工作
下一篇:Bash脚本参数中的自动补全