Shell脚本传参及接收参数的处理

shell 2023-07-15 779次浏览

前言

在Shell脚本中,可以通过命令行传递参数来向脚本传递数据。脚本可以使用特殊变量来接收和处理这些参数。下面是关于Shell脚本传参和接收参数处理的示例:

1. 传递参数

可以在运行Shell脚本时,使用空格分隔的方式传递参数。例如:

./bin/build.sh arg1 arg2 arg3

2. 接收参数

Shell脚本中使用特殊变量来接收和处理传递的参数。以下是几个常用的特殊变量:

  • $0:表示当前脚本的名称。
  • $1$2$3 等:表示传递到脚本的第一个、第二个、第三个参数,以此类推。
  • $*:表示所有的位置参数(传递到脚本的参数)。
  • $#:表示传递到脚本的参数的总数。

例如,脚本 ./bin/build.sh 的内容如下:

echo "Script name: $0"
echo "First argument: $1"
echo "Second argument: $2"
echo "All arguments: $*"
echo "Total arguments: $#"

运行命令行 ./bin/build.sh Hello World,输出结果如下:

Script name: ./bin/build.sh
First argument: Hello
Second argument: World
All arguments: Hello World
Total arguments: 2

在脚本中,通过使用特殊变量如 $0$1$*$# 来引用和处理传递的参数。

3. 使用 shift 命令

在处理参数时,有时候可能需要跳过特定的参数。可以使用 shift 命令将参数后移。例如:

echo "First argument: $1"
shift
echo "Second argument: $1"

运行命令行 ./bin/build.sh arg1 arg2 arg3,输出结果如下:

First argument: arg1
Second argument: arg2

在第一个 echo 后的 shift 命令将参数后移了一位,因此第二个 echo 打印的是第二个参数。

Shell脚本传参及接收参数的处理

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址