📅  最后修改于: 2023-12-03 15:13:37.825000             🧑  作者: Mango
有些 Shell 脚本需要允许用户传递参数来控制执行的行为。 但是,如果用户忘记传递参数或者不知道需要传递什么参数, Shell 脚本可以使用默认参数。 在本文中,我们将介绍如何在 Bash 中添加默认参数。
默认参数是可选的参数,它们在使用时,如果用户没有提供参数,则会被设置为默认值。
命令行中传递的额外参数会覆盖默认值。
在 Bash 中添加默认参数的语法如下:
${variable:-defaultValue}
${variable}
表示需要设置默认值的变量名称。
:-
表示如果该变量未定义或为空字符串,则使用默认值。
defaultValue
指定要使用的默认值。
考虑以下示例,此脚本需要两个参数 username 和 password,但是如果有必要可以使用默认值。默认用户名为“john”和默认密码为“password”。
#!/bin/bash
# 设置默认值
username=${1:-john}
password=${2:-password}
echo "Username: $username"
echo "Password: $password"
如果脚本使用以下命令运行,则输出将是:
./script.sh # 默认用户名和密码
输出:
Username: john
Password: password
如果脚本使用以下命令运行,则输出将是:
./script.sh alice # 自定义用户名, 默认密码
输出:
Username: alice
Password: password
如果脚本使用以下命令运行,则输出将是:
./script.sh alice mysecretpassword # 自定义用户名和密码
输出:
Username: alice
Password: mysecretpassword
默认参数是在 Bash 中很有用的功能。 在此示例中,我们演示了如何使用默认参数来指定允许的参数,如果未定义,则使用默认参数。 此外,还可以在此示例中使用多个默认参数来更好地控制文本的处理方式。