shell腳本是什麼?
純文本文檔——文檔中存儲的數據都是以字符爲單位進行存儲的;
根據用戶的需求來解決用戶問題的大量命令組合體;
“執行冪等性”——任何命令多次執行的結果是一致的;
很多命令不具備“執行冪等性”,在shell腳本中就需要大量的程序邏輯來判斷某個命令是否滿足其運行條件,以避免在運行過程中出現嚴重錯誤;
shell腳本中的代碼內容:
1,首行必須是shebang,解釋器路徑,必須佔據絕對行首;在執行時啓動相應的解釋器以解釋腳本內諸多命令;
#!/bin/bash
#!/bin/sh
#!/usr/bin/python
#!/usr/bin/perl
2,在shell腳本中,除了shebang之外,以#佔據絕對行首的內容,均爲註釋行,解釋器會忽略這樣的行的內容
3,解釋行會忽略腳本中所有的空白行;
4,大量的命令和關鍵字(if,else,then,do,while,for.....)
注意:shell腳本一旦運行,是在當前的shell中根據shebang的指示,開啓了一個解釋器(子shell)解釋執行代碼內容,shell腳本的內容是在一個子shell進程中實現的;
我們可以利用文本編輯工具來編寫shell腳本:
nano,vi,vim,emacs,pico 推薦使用vim
約定下,腳本文件名後綴爲.sh,也可以不加;
腳本的運行方法:
1,爲腳本文件賦予執行權限,直接運行此文件;
chmod +x /PATH/TO/SSCRIPT_FILE
如果在執行腳本時,只寫文件名不給出路徑的話,必須確保PATH變量中保存的路徑下,能找到該腳本文件;
2,直接使用解釋器運行,將腳本作爲解釋器命令的參數;