網站首頁 學習教育 IT科技 金融知識 旅遊規劃 生活小知識 家鄉美食 養生小知識 健身運動 美容百科 遊戲知識 綜合知識
當前位置:趣知科普吧 > IT科技 > 

set命令詳解|linux

欄目: IT科技 / 發佈於: / 人氣:9.64K

1、set命令功能:

用來設定shell,set指令能設定所使用shell的執行方式,可依照不同的需求來做設定。

2、語法:

set [+-abCdefhHklmnpPtuvx]語法爲set [-abefhkmnptuvxBCEHPT] [-o option-name] [argument …] 或者 set [+abefhkmnptuvxBCEHPT] [+o option-name] [argument …]。

第一組與第二組都是set的選項,+號表示關閉選項,-號表示開啟選項,最後一組argument是位置參數。

3、補充說明:

set指令能設定所使用shell的執行方式,可依照不同的需求來做設定。

4、參數:

-a  標示已修改的變量,以供輸出至環境變量。
-b  使被中止的後臺程序立刻回報執行狀態。
-C  轉向所產生的檔案無法覆蓋已存在的檔案。
-d  Shell預設會用雜湊表記憶使用過的指令,以加速指令的執行。使用-d參數可取消。
-e  若指令傳回值不等於0,則立即退出shell。  
-f   取消使用通配符。
-h  自動記錄函數的所在位置。
-H Shell  可利用"!"加<指令編號>的方式來執行history中記錄的指令。
-k  指令所給的參數都會被視爲此指令的環境變量。
-l  記錄for循環的變量名稱。
-m  使用監視模式。
-n  只讀取指令,而不實際執行。
-p  啓動優先順序模式。
-P  啓動-P參數後,執行指令時,會以實際的檔案或目錄來取代符號連接。
-t  執行完隨後的指令,即退出shell。
-u  當執行時使用到未定義過的變量,則顯示錯誤資訊。
-v  顯示shell所讀取的輸入值。
-x  執行指令後,會先顯示該指令及所下的參數。

+<參數>  取消某個set曾啓動的參數。

5、set命令的其他特徵:

開啓選項之後需要關閉,再執行set +選項就可以了。

set後接的位置參數默認會賦值給環境變量$1, $2, $3......,位置參數的數量賦值爲$#。

set命令不帶選項與位置參數時,輸出SHELL環境變量與SHELL函數。

建議在腳本的頭部設定set -eux ; set -o pipefail 或者,按bash -eux -o pipefail script.sh方式執行腳本。

linux set命令詳解

Tags:linux set 命令