阅读量:0
在shell脚本中,可以使用特殊变量来接收传递给脚本的参数。以下是两种常用的方式:
使用$0、$1、$2等变量:
$0
表示脚本本身的名字。$1
、$2
、$3
等表示传递给脚本的参数,依次是第一个、第二个、第三个参数,以此类推。- 例如,如果你的脚本名字是
script.sh
,并且执行命令是./script.sh arg1 arg2
,则可以在脚本中通过$0
获取到script.sh
,通过$1
获取到arg1
,通过$2
获取到arg2
。
使用$@或$*变量:
$@
表示传递给脚本的所有参数,每个参数都用双引号括起来。$*
也表示传递给脚本的所有参数,但是参数之间没有引号。- 例如,如果你的脚本执行命令是
./script.sh arg1 arg2
,则可以在脚本中通过$@
获取到"arg1" "arg2"
,通过$*
获取到arg1 arg2
。
下面是一个示例脚本,展示了如何使用这些变量来获取传递给脚本的参数:
#!/bin/bash echo "脚本名字是:$0" echo "第一个参数是:$1" echo "第二个参数是:$2" echo "所有参数是:$@" echo "所有参数是(使用*):$*"
假设脚本名字是 script.sh
,执行命令是 ./script.sh arg1 arg2
,则执行该脚本将会输出:
脚本名字是:./script.sh 第一个参数是:arg1 第二个参数是:arg2 所有参数是:arg1 arg2 所有参数是(使用*):arg1 arg2