将参数传递给脚本

在执行脚本时,可以通过命令行将参数传递给脚本。具体方法是在脚本文件名后跟随一个由空格分隔的参数列表。

在脚本内部,特殊变量用于引用这些参数:

  • $1 变量引用命令行中的第一个参数。
  • $2 变量引用第二个参数,依此类推。
  • $0 变量引用当前脚本的名称。

以下示例展示了脚本名称后跟随 6 个参数的情况:

./bin/my_shopping.sh apple 5 banana 8 "Fruit Basket" 15

在脚本内部,可以通过以下方式访问这些参数:

echo $3                          # 输出结果:banana
BIG=$5
echo "A $BIG costs just $6"      # 输出结果:A Fruit Basket costs just 15

特殊变量

除了位置参数外,Shell 还提供了一些特殊变量来处理参数列表:

  • 参数数量:变量 $# 存储传递给脚本的参数数量。

    echo $#               # 输出结果:6
  • 所有参数:变量 $@ 包含传递给脚本的所有参数列表。

练习说明

本节没有练习。您可以继续学习后续内容。

教程代码

#!/bin/bash
# There is no exercise for this section.
# You may proceed.

解决方案

#!/bin/bash
# There is no exercise for this section.
# You may proceed.

预期输出

#!/bin/bash
# There is no exercise for this section.
# You may proceed.

系列教程导航