Linux shell 脚本中, $@ 和$# 分别是什么意思?

2024-11-26 09:51:27
推荐回答(5个)
回答1:

直接看示例:
[root@localhost xly]# cat t.sh
#!/bin/bash
echo $#
echo $@
[root@localhost xly]# sh t.sh
0
[root@localhost xly]# sh t.sh a b c
3
a b c
说明:
$@表示所有参数
$#表示所有参数的个数

回答2:

$@:表示所有脚本参数的内容

$#:表示返回所有脚本参数的个数。


示例:编写如下shell脚本,保存为test.sh

#!/bin/sh

echo "number:$#"

echo "argume:$@"

执行脚本:

./test.sh first_arg second_arg

说明:给脚本提供了两个参数,所以$#输出的结果是2,$@代表了参数的内容!

回答3:

Linux shell 脚本中, $@ 和$# 分别是:

$@:表示所有脚本参数的内容

$#:表示返回所有脚本参数的个数。

示例:编写如下shell脚本,保存为test.sh

#!/bin/sh

echo "number:$#"

echo "argume:$@"

执行脚本:

./test.sh first_arg second_arg

说明:给脚本提供了两个参数,所以$#输出的结果是2,$@代表了参数的内容!

回答4:

$#,表示参数个数
$@,所有参数,并且所有参数都是独立的

例如 command a b c d
$#=4
$@="a" "b" "c" "d"
$@可以用来做 for each in

回答5:

$@表示所有参数
$#表示参数的个数