Shell编程基础及变量 shell编程基础命令( 二 )


单独说下$* 和$@这两个的区别,看下例子基本就明白:编辑文件 .sh,循环一下:
for x in "$@"
do
echo "@参数 $x"
done
for x in "$*"
do
echo "*参数 $x"
done
执行结果:
[root@ shell]#20 40
【Shell编程基础及变量shell编程基础命令】@参数 20
@参数 40
*参数 20 40
预定义变量,预定义变量指系统定义的变量,和系统变量类似,但是与定义变量不能修改,,具体有三个$$表示当前进程的pid,$!表示的是最后一个后台进程的pid,后台进程指的是执行的时候加$,还有一个是$?表示的是最后一个进程的执行状态,0表示正确执行,非0表示没有正确执行,具体值不一定是啥 。