一、Shell中有许多预定义的特殊字符:
$n :n是一个数字(大于10则用大括号括起来,${12}),代表程序的第n个参数
$# :总共有多少个参数
$* :指所有的参数
$@ :指所有的参数
$? : 上次命令执行的返回值
注意:我们发现$*和$@的意思是一样的,其实它们两个有一个很大的区别:
$* 将所有参数放在一块内存中,以空格分隔
$@ 将每个参数分别放在一块内存中,相当于字符串数组
二、case语句,shell中的开关语句
shell中的开关语句有许多地方和C语言是类似的我们可以通过对比两个就可发现其相似之处。
不同之处:
C语言中每个开关结束时,必须以break跳出。如果不跳的话继续向下执行。
而在shell中每个开关是以双分号;;来跳出的。如果不跳则出现语法错误。
三、shell中的函数调用
shell中的函数可以有参数,也可以有返回值。
但是它没有形参列表,没有返回值类型,而且取返回值的方式也与众不同。