1. 程式人生 > 其它 >第一個shell指令碼(bash指令碼)

第一個shell指令碼(bash指令碼)

首先它是一個指令碼,並不能作為正式的程式語言。因為是跑在linux的shell中,所以叫shell指令碼。說白了,shell指令碼就是一些命令的集合。
運維工作中把常用的一系列的操作都記錄到一個文件中,然後去呼叫文件中的命令,這樣一步操作就可以完成。其實這個文件呢就是shell指令碼了,只是這個shell指令碼有它特殊的格式。
根據慣例約定,凡是自定義的指令碼建議放到/usr/local/sbin/目錄下,這樣做的目的是,一來可以更好的管理文件;二來以後接管你的管理員都知道自定義指令碼放在哪裡,方便維護。

第一個shell指令碼(bash指令碼):

#! /bin/bash

## author:xiongzaiqiren
## This is my first shell script

date -R echo 'Hello World'

在Linux裡面將上面這段程式碼敲進文字編輯器,並將檔案命名為myfirstbash.sh,然後賦予執行許可權chmod +x myfirstbash.sh(預設我們用vim編輯的文件是不帶有執行許可權的,所以需要加一個執行許可權),執行 ./myfirstbash.sh 就可以看到執行結果。如圖:

shell指令碼的基本結構以及如何執行?

Shell指令碼通常都是以.sh 為字尾名的,這個並不是說不帶.sh這個指令碼就不能執行,只是大家的一個習慣而已。所以,以後你發現了.sh為字尾的檔案那麼它一定會是一個shell指令碼了。myfirstbash.sh中第一行一定是 “#! /bin/bash” 它代表的意思是:該檔案使用的是bash語法。如果不設定該行,那麼你的shell指令碼就不能被執行。’#’表示註釋,在前面講過的。後面跟一些該指令碼的相關注釋內容以及作者和建立日期或者版本等等。當然這些註釋並非必須的,如果你懶的很,可以省略掉,但是筆者不建議省略。因為隨著你工作時間的增加,你寫的shell指令碼也會越來越多,如果有一天你回頭檢視你寫的某個指令碼時,很有可能忘記該指令碼是用來幹什麼的以及什麼時候寫的。所以寫上註釋是有必要的。另外系統管理員並非你一個,如果是其他管理員檢視你的指令碼,他看不懂豈不是很鬱悶。該指令碼再往下面則為要執行的命令了。

Shell指令碼的執行很簡單,直接”sh filename “ 即可,另外你還可以這樣執行”./filename “ 。另外使用sh命令去執行一個shell指令碼的時候是可以加 -x 選項來檢視這個指令碼執行過程,這樣有利於我們除錯這個指令碼哪裡出了問題。