什么是shell
Shell就是一个命令行解释器,是一个作为用户与Linux系统间接口的应用程序,它允许用户向操作系统输入需要执行的命令,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。 这与Windows的命令提示符类似,但Linux shell的功能更加强大。
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言(也就是我们所说的shell脚本)。
作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统的关键。
什么是脚本
脚本简单地说就是一条条需要执行的命令,这些命令是可以看到的(如可以用记事本打开查看、编辑),脚本程序在执行时,是由系统的一个解释器,将其一条条的翻译成机器可识别的指令,并按程序顺序执行。因为脚本在执行时多了一道翻译的过程,所以它比二进制程序执行效率要稍低一些。但又因为是一条条命令的集合,只需要解释器进行解释,而不需要编译。Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。
第一个shell脚本
打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展名为 sh(sh代表shell)
实例:
#!/bin/bash
echo "Hello World !"
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
echo 命令用于向窗口输出文本。
运行shell脚本
将上面的代码保存为 test.sh,并 cd 到相应目录:
1.作为可执行文件运行
chmod a+x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
2.bash命令运行
./bash test.sh #执行脚本