初次接触unix可能最先接触的就是shell这个东西。开始也不太理解,查询其英语意思是“壳”。只是觉得shell是一个界面,我们可以在上面执行一些命令,可以在上面运行程序,可以写一些shell脚本。就是一个壳的存在。
shell其实本质也是程序的一种,是一个特殊的程序,为运行其他应用程序而提供的一个接口。通常用户登录之后,系统会显示一些信息,之后用户就可以在shell输入各种命令,对系统进行操作。shell相当于一个命令行解释器,读取用户的输入,然后执行相应的命令。
shell有很多版本,常见的有Bourne shell、Bourne-again shell、C shell、Korn shell、TENEX C shell,他们存放的路径是不同的,而目前系统使用哪一个shell取决于用户登录项的最后一个字段。用户登录项通常位于/etc/passwd文件下面,最后一个冒号后面的路径即为shell的路径。
明确了系统使用哪个shell之后,我们在编写shell脚本的时候,通常第一句话就需要用到这个shell的路径。比如#!bin/sh,只有正确使用了shell的路径,编写的shell脚本才能顺利运行。否则,脚本可能无法执行成功。所以编写shell脚本要注意shell的路径,不能照抄别人的shell脚本的开头第一句话。
领取专属 10元无门槛券
私享最新 技术干货