Shell 传递参数学习笔记

Shell 脚本是在 Linux 和 Unix 操作系统上运行的脚本程序。它们是由命令组成的简单文本文件,可以用来自动化各种不同的任务。传递参数是在 Shell 脚本中非常常见的一项任务,这个过程允许你将一个或多个参数传递给脚本,以便根据这些参数执行不同的操作。

基本语法

当你运行一个 Shell 脚本时,可以提供一个或多个参数,这些参数被称为“位置参数”(positional parameters)。Shell 脚本可以通过从位置参数数组 "$1"、"$2"、"$3" 等中获取参数的值来使用这些参数。以下是传递参数的基本语法:

shCopy Code
script.sh arg1 arg2 arg3 ...

其中,“script.sh”是要运行的脚本的名称,“arg1”、“arg2”、“arg3” 等是要传递给脚本的参数。

实例演示

下面是一个简单的示例,演示如何在 Shell 脚本中传递参数。

示例1:显示传递的参数

以下是一个名为 "test.sh" 的脚本,它接受三个参数并显示它们:

shCopy Code
#!/bin/bash echo "第一个参数为: $1" echo "第二个参数为: $2" echo "第三个参数为: $3"

运行脚本时,将三个参数作为参数传递:

shCopy Code
$ sh test.sh apple banana orange 第一个参数为: apple 第二个参数为: banana 第三个参数为: orange

示例2:计算两个数字的和

以下是一个名为 "addition.sh" 的脚本,它接受两个数字作为参数,并计算它们的和:

shCopy Code
#!/bin/bash # 检查是否提供了足够的参数 if [ $# -ne 2 ]; then echo "Usage: $0 num1 num2" exit 1 fi # 获取传递的参数 num1=$1 num2=$2 # 计算两数之和 sum=$((num1 + num2)) # 显示结果 echo "Sum of $num1 and $num2 is: $sum"

运行脚本时,将两个数字作为参数传递:

shCopy Code
$ sh addition.sh 10 20 Sum of 10 and 20 is: 30

这种方式可以用于执行各种计算任务。

总结

在 Linux 和 Unix 操作系统上编写 Shell 脚本时,传递参数是非常常见的任务之一。Shell 脚本可以很容易地从位置参数数组中获取传递的参数,并使用这些参数来执行各种不同的任务。我们演示了基本语法和一些实例,了解了 Shell 脚本传递参数的运作方式,希望这些内容能够对您有所帮助。