📜  如果参数提供了 bash - Shell-Bash (1)

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

如果参数提供了 bash - Shell-Bash

Bash 是一个常见的 Unix shell,它允许用户在命令行下运行脚本和命令。Bash 是 GNU 项目的一部分,它是 Linux 和 macOS 上默认的 shell。

当你在命令行下运行一个脚本或者命令时,你可以使用参数来调整脚本或命令的行为。Bash 脚本或命令的参数可以通过 $1$2$3,等等变量来引用。另外,$0 变量包含命令或脚本的名称。

下面是一个例子,展示了如何在 Bash 中使用参数:

#!/bin/bash

# This script accepts two arguments and prints them out.
echo "The first argument is: $1"
echo "The second argument is: $2"

你可以通过给脚本传递参数来运行它,例如:

$ ./script.sh foo bar
The first argument is: foo
The second argument is: bar

在上面的例子中,$1 变量被设置为 "foo",$2 变量被设置为 "bar"。

除了使用 $1$2 等变量来引用参数之外,Bash 还提供了一些内置的变量来使用参数。例如:

  • $# 可以获取参数的个数;
  • $* 可以获取所有参数,并且它们会作为一个被空格分隔的字符串返回;
  • $@ 可以获取所有参数,并且它们会分别作为不同的参数返回,在处理包含空格的参数时比 $* 更加灵活。

下面是一个例子,展示了如何使用这些变量:

#!/bin/bash

# This script prints out the number of arguments,
# and then prints out each argument.
echo "There are $# arguments."

echo "The arguments as a string: $*"
echo "The arguments as separate strings: $@"

你可以通过给脚本传递参数来运行它,例如:

$ ./script.sh foo bar "baz qux"
There are 3 arguments.

The arguments as a string: foo bar baz qux
The arguments as separate strings: foo bar baz qux