$?,$#,$*,$@的区别

$?:
上一个命令如果顺利执行,则返回0,如果不成功,则返回非0的值
 
 
$#:
$# :它可抓出 positional parameter 的�盗�
以 my.sh p1 "p2 p3" �槔�:
由於 p2 �c p3 之�g的 IFS 是在引号中,因此 $# 可得到 2 的值。
但如果 p2 �c p3 �]有在引号中的话,那 $# 就可得到 3 的值了。
 
我��常在 shell script �e用如下方法�y� script 是否有�x�M���
[ $# = 0 ]

 
$@ 和 $*
以 my.sh p1 "p2 p3" �槔�:
"$@" �t可得到 "p1" "p2 p3" "p4" �@三��不同的�~段(word)�r
"$*" �t可得到 "p1 p2 p3 p4" �@一整串�我坏脑~段。

你可能感兴趣的:(shell,职场,休闲)