首页 > 代码库 > sh和bash的区别

sh和bash的区别

在鸟哥的私房菜的一书中,介绍了UNIX的版本以及众多的SHELL版本。 
早在UNIX年代,发展者众多,所以由于shell依据发展者的不同就有许多版本,比如sh,C SHell,K SHell,还有TCSH等,每一种Shell都各有特点。当然也有我们的bash,bash这个shell是Bourne Shell的增强版本,也是基于GNU的架构下发展出来的。

sh和bash的区别

因为bash是sh的增强版本,在我们平常实地操作的时候如果sh这个命令不灵了我们应当使用bash。 

举个例子来说如果我们使用数字的加减 
有几种不同的版本,

#! /bin/bashno1=4no2=5let no1++let result=no1+no2echo $resultresult=$[no1+no2]echo $resultresult=$[$no1+5]echo $resultresult=$((no1+50))echo $result如果使用sh则输出test3.sh: 4: test3.sh: let: not foundtest3.sh: 5: test3.sh: let: not found$[no1+no2]$[4+5]

可以看见sh不仅不支持多种命令,而且很多细小的差别。 

sh和bash的区别