開篇介紹
Linux里非常的有用的一個功能,這個功能就叫Shell腳本。
Shell腳本在我日常開發(fā)工作里也占了非常重要的角色,項目中一些簡單的工作我們都可以使用Shell腳本來完成,比如定時刪除日志文件腳本、一鍵部署系統(tǒng)腳本等一些自動化的功能。
所以掌握好Shell腳本編程,處理一些自動化繁瑣的事情會有事半功倍的效果。不管是Linux開發(fā)人員還是運維人員都有必要掌握Shell編程。
什么是Shell?
Shell是命令解釋器,用于解釋用戶對操作系統(tǒng)的操作。
簡單的理解就是,Shell會把用戶所執(zhí)行的命令,翻譯給Linux內(nèi)核,Linux內(nèi)核在根據(jù)命令執(zhí)行的結(jié)果,返回給用戶。
比如 Linux查看文件列表的ls命令
[root@lincoding /]# ls
bin dev home lib64 media opt root selinux sys usr
boot etc lib lost+found mnt proc sbin srv tmp var
ls執(zhí)行的過程簡單概述如下:

我們可以通過簡單命令,控制內(nèi)核和操作系統(tǒng),做我們很多想做的事情,初學(xué)者用戶也不用去了解Linux的底層知識,那么這就是Shell解釋器最主要的功能。
Shell有很多種
可以通過cat /etc/shells查看你的Linux系統(tǒng)支持的Shell,我的Linux是CentOs6.5,它支持的Shell如下:
[root@lincoding /]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
CentoO6.5 Linux常用和默認(rèn)的Shell就是bash,我們先只需重學(xué)習(xí)bash就可以了。
小結(jié)
本章簡單的介紹了Shell基本概念:
Shell的作用就是解釋用戶輸入的Linux命令給內(nèi)核,內(nèi)核會把命令的執(zhí)行結(jié)果,返回給Shell,Shell在顯示給用戶看。
Shell種類也有很多,每個系統(tǒng)的默認(rèn)的Shell都有所不同,CentOs6.5默認(rèn)的Shell解釋器是bash。