linux shell脚本sh和bash的区别

linux | 2019-10-08 14:51:45

1.什么是SHELL?
  shell的中文意思就是贝壳,其实比较类似于我们内核的壳。简而言之就是只要能够操作应用程序的接口都能够称为SHELL。狭义的shell指的是命令行方面的软件,广义的SHELL则包括图形界面。

 

2.sh和bash概念

bash是 Bourne Again SHell 是linux标准的默认shell ,它基于Bourne shell,吸收了C shell和Korn shell的一些特性。bash完全兼容Bourne shell,也就是说用Bourne shell的脚本不加修改可以在bash中执行。 
sh是Bourne shell 这个是UNIX标准的默认shell,对它评价是concise简洁 compact紧凑  fast高效 有AT&T编写,属于系统管理shell。

 

3.sh和bash区别

bash脚本开头:

#!/bin/bash
echo"foo"

 

sh脚本开头

#!/bin/sh
echo"foo"

 

#!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面跟的是此解释此脚本的shell的路径。#!/bin/bash bash也是一样的道理。

bash 和 sh 是两个不同的外壳。 基本上 bash 是 sh,具有更多的特性和更好的语法。因为bash是sh的增强版本,在我们平常实地操作的时候如果sh这个命令不灵了我们应当使用bash,所以一般将/bin/sh软链接到/bin/bash.

 

登录后即可回复 登录 | 注册
    
关注编程学问公众号