📜  bash 添加默认参数 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:13:37.825000             🧑  作者: Mango

Bash 添加默认参数 - Shell-Bash

有些 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 中很有用的功能。 在此示例中,我们演示了如何使用默认参数来指定允许的参数,如果未定义,则使用默认参数。 此外,还可以在此示例中使用多个默认参数来更好地控制文本的处理方式。