天天看點

我從其他人的Shell腳本中學到的

我是一個shell腳本迷,也很喜歡從其他人的shell腳本裡學習一些有趣的東西。最近我偶然接觸到用于友善ssh伺服器雙重認證的 authy-ssh 腳本。 浏覽腳本後我學到了一些很酷的東西,在此也想分享給大家。

<a target="_blank"></a>

很多時候,你會想讓echo能以多種顔色區分不同輸出。比如,綠色表示成功,紅色告知失敗,黃色提示警告。

這裡使用 tput 來配置輸出顔色,輸出文本,最後再恢複預設輸出顔色。如果想對 tpu 了解更多,參看 prompt-color-using-tput 。

僅當設定debug标志時才列印調試資訊。

還有來自于一些很酷的geeks的單行debug函數:

這裡使用 which 指令來查找可執行檔案 curl 的路徑。如果成功找到,則可執行檔案檔案是存在的,否則就不存在。 &amp;&gt;/dev/null 将标準輸出和标準錯誤重定向到 /dv/null (也就是不顯示在終端上了)。

一些朋友建議可以直接使用 which 傳回的狀态碼。

在我開始寫shell腳本的初期,常會使用 echo 指令顯示腳本的使用說明。 但當說明的文字較多時,echo 語句就會變得一團糟。随後我發現,可以使用 cat指令來顯示使用說明。

這裡的 &lt;&lt; 稱為 here document,它可以将字元串放置在兩個 eof 之間。

我們有時會希望在使用者沒有提供設定參數時能夠使用預設值。

這一語句檢查環境變量 url ,如果不存在,就将其設定為 localhost。

${#variable_name} 可以給出字元串的長度。

完結。 祝各位程式設計開心,享受這美好的一天吧!

原文釋出時間為:2013-08-21

本文來自雲栖社群合作夥伴“linux中國”