测试脚本
[root@localhost ~/test]$cat test.sh
#!/bin/bash
#
#
#====================================================
# $@ $* "$@" "$*"的区别
#
#====================================================
echo "===========\$@============"
for i in $@;do
echo $i
done
echo ""
echo "===========\$*============"
for i in $*;do
echo $i
done
echo ""
echo "==========\"\$@\"==========="
for i in "$@";do
echo $i
done
echo ""
echo "==========\"\$*\"==========="
for i in "$*";do
echo $i
done
测试结果
[root@localhost ~/test]$bash test.sh arg1 arg2 arg3 arg4
===========$@============
arg1
arg2
arg3
arg4
===========$*============
arg1
arg2
arg3
arg4
=========="$@"===========
arg1
arg2
arg3
arg4
=========="$*"===========
arg1 arg2 arg3 arg4
总结
注意"$*"和其它不同,它把所有参数当作一个字符串来处理