Shell是指提供用户访问操作系统内核服务的接口的应用程序。
Ken的sh是第一个Unix Shell,也是一个典型的图形界面Shell。
Shell在线工具
外壳脚本
Shell脚本(shell)是为shell编写的脚本程序。
业内所说的shell通常指的是shell脚本,但读者应该知道shell和shell是两个不同的概念。
由于习惯和简洁,本文提到的“shell编程”指的是shell脚本编程,而不是指shell本身的开发。
外壳环境
Shell编程与java、php编程相同。 您所需要的只是一个可以编写代码的文本编辑器和一个可以解释和执行代码的脚本解释器。
Linux Shell 有很多种类型,常见的有:
本教程重点介绍 Bash,也称为 Again Shell。 由于 Bash 易于使用且免费,因此在日常工作中被广泛使用。 同时,Bash 也是大多数 Linux 系统的默认 Shell。
一般情况下,人们不会区分Shell和Again Shell,所以,像#!/bin/sh一样,也可以改为#!/bin/bash。
#! 告诉系统后面的路径指定的程序是解释这个脚本文件的Shell程序。
第一个 shell 脚本
打开文本编辑器(可以使用vi/vim命令创建文件),新建一个文件test.sh,扩展名为sh(sh代表shell),扩展名不影响脚本的执行,只需知道名字并理解它。 如果你使用PHP编写shell脚本,并使用PHP作为扩展。
输入一些代码,第一行通常如下所示:
例子
#!/bin/bash
回声“你好世界!”
运行实例 »
“#!” 是一个约定标记,告诉系统这个脚本需要什么解释器来执行,即使用哪个shell。
echo 命令用于将文本输出到窗口。
运行 Shell 脚本有两种方式: 1. 作为可执行程序
将以上代码保存为test.sh并cd到对应目录:
chmod +x ./test.sh #使脚本具有执行权限 ./test.sh #执行脚本
注意,一定要写成./test.sh,而不是test.sh。 运行其他二进制程序也是如此。 如果直接编写 test.sh,Linux 系统会去 PATH 中查找是否有名为 test.sh 的文件,但 PATH 中只有 /bin 、 /sbin 、 /usr/bin 、 /usr/sbin 等。 你当前的目录通常不在PATH中,所以如果你写test.sh,你将找不到该命令。 你需要使用./test.sh告诉系统,在当前目录中查找即可。
2. 作为解释器参数
这种操作方式是直接运行解释器,其参数为shell脚本的文件名,如:
/bin/sh test.sh /bin/php test.php
这样运行的脚本不需要在第一行指定解释器信息,写了也没用。