📜  Bash 脚本 – Bash 脚本和 Shell 脚本之间的区别

📅  最后修改于: 2022-05-13 01:57:27.858000             🧑  作者: Mango

Bash 脚本 – Bash 脚本和 Shell 脚本之间的区别

在计算机编程中,脚本被定义为由另一个程序执行的指令序列。 shell 是 Linux 的命令行解释器,它提供用户和内核系统之间的接口并执行称为命令的指令序列。 shell 能够运行脚本。传递给 shell 的脚本称为 shell 脚本。

bash 脚本:

Bash 脚本就像一个简单的文本文件,由我们通常在命令行中编写的许多命令组成。在 Linux 文件系统中,它们用于执行重复性任务。 Bash 脚本可能包含许多命令,也可能包含循环、函数、条件结构等元素。简单来说,Bash 脚本是用 Bash 编程语言编写的计算机程序。

Bash 的一些特性如下:

  • Bash 可以通过单字符命令行选项和多字符命令行选项调用。例如,(-a, -b) 是单字符命令行,-debugger 是多字符命令行选项。
  • Bash 由键绑定组成。
  • Bash 提供了一维数组,借助它我们可以轻松地操作数据列表。
  • Bash 提供了控制结构。例如,构造结构等。

例子:

#!/bin/bash  

myString="GeeksforGeeks"
echo "myString: $myString"

输出:

bash 脚本

外壳脚本:

Shell 被认为是一种特殊的用户程序,它为用户提供平台或接口,使他们可以使用操作系统服务。用户可以向 shell 提供人类可读的命令,然后 shell 将它们转换为内核可理解的形式。 shell 被认为是一种命令语言解释器,它可以执行可以从键盘等输入设备读取的命令。

Shell 的一些特性如下所示:

  • 文件名中的通配符替换(模式匹配):通过提及要匹配的模式而不是提及实际文件名来对一堆文件执行命令。
  • 后台处理:使冗长的任务在后台运行,以便释放终端进行并发交互处理。
  • 管道:将任意数量的命令组合在一起以形成一个复杂的程序。一个程序的输出成为另一个命令的输入。
  • Shell 变量替换:它将数据存储在用户定义的变量和预定义的 shell 变量中。

现在,shell 可以通过一个文件接受许多命令,称为 shell 脚本。 shell 脚本包含许多由 shell 执行的命令。例如,

例子:

#!/bin/sh

myString="GeeksforGeeks"
echo "myString: $myString"

输出:

外壳脚本

bash脚本和shell脚本的区别表

Sr. No.Bash scriptShell script
01The bash script is a script that is specifically created for Bash.The shell script is a script that can be executed in any shell. 
02Bash scripting is a subset of shell scripting.Shell scripting is a method to automate tasks as a collection of commands. 
03The bash script is one form of shell script.Shells may be one of  Korn, C shell, Bourne, Bash, etc.
04Bash is an acronym for Bourne Again SHell and was developed by Brian Fox.Shell is considered the original Unix shell developed by Stephen Bourne.
05Bash has more features as compared to Shell.Shell has fewer features as compared to Bash.
06We can use shebang, “#!/bin/sh” if we want to use sh. We can use shebang, “#!/bin/bash” if we want to use Bash if available. 
07Bash is more programmer-friendly as compared to shell.Shell is less programmer-friendly as compared to Bash.