shell腳本學習第一彈

shell腳本學習第一彈


作為一個linux程序員,不會shell的腳本的編寫,可是不合格的呀!!!
今天,我們一起來看看shell腳本的編寫:


別的先不說,先來一個入門級的案例:

 1 #!/bin/bash
  2 #當前路徑
  3 pwd
  4 #打印hello
  5 echo "hello"

我們執(zhí)行

chmod +x hello.sh 
./hello.sh

結(jié)果:

/home/shell
hello

能打印出這個,說明入門了。


我們來看看上面這個腳本,首先,我就有幾個疑問?

  • 1 為什么要用#!/bin/bash
  • 2.執(zhí)行的過程是什么?

簡答:

  1. 我們從程序執(zhí)行的角度來說的話,如果一個程序沒有執(zhí)行權(quán)限的話,機器就會報錯“權(quán)限不夠”這類的錯誤;換個角度來說的話,不管什么程序執(zhí)行,都要判斷這個程序是否有對應的權(quán)限,如果沒有權(quán)限,一般是沒有辦法執(zhí)行的。
    2.在linux系統(tǒng)中,個文件加權(quán)限的方式是:chmod ,+x表示給程序叫上可執(zhí)行的權(quán)限。shell收到我們執(zhí)行的命令后,會調(diào)用linux內(nèi)核命令來新建一個進程來處理我們的命令。像我們C/C++編譯完都是二進制的文件,linux內(nèi)核知道怎么去執(zhí)行它,但是我們的.sh的腳本文件的話,它是一個文本文件,內(nèi)核不知道怎么去執(zhí)行,所以就該我們的“#!/bin/bash”出場了,這個我更愿意叫他解釋器。當命令行發(fā)現(xiàn)“#!”的時候,它就會在這個后面找到解釋器的路徑,當然,一個機器可能有幾個解釋器,我們可以用命令“whereis shell”進行查看!到此為止,我們就知道為什么要用“#!/bin/bash”了!!!!!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容