深入了解bash shell script
深入了解bash shell script 前言 相信所有玩過 Unix的人都會同意 shell script 是一個十分強大的工具,可以用來幫助自已在短時間內解決許多枯\躁而乏味的工作,而且讓工作變得有趣。 對於 shell script 要怎麼寫,為什麼會想到這麼寫?對於這個問題,我個人的答案是:用多了,就知道了。有時很聰明的想法,往往是靈機一動,就想到了。我會建議大家,如果寫了好用的 script 就把他留下來,給個好名字。有時候用得上時,就會很高興有這個自製的工具。 寫 script 之前,要先了解: 1. 資料流 >、>>、<、| , #&># ..... 2. 一些好用的指令 cat ,grep,awk,sed,find,more........... 3. 變數 4. 運算式 5. 判斷式 if ,if else,if elif else,case ... esac 6. 迴圈 for,while,until 7.函式 參考 : 如何撰寫Shell Script 資料流 UNIX是第一個支援資料流的作業系統。什麼是資料流呢? 就是把程式的輸入和輸出想像成一個串流,在 Unix 之下,任和一個一般的程式都會直接開三個檔案。 0. stdin 1. stdout 2. stderr 這三個檔案分別是 資料流的 輸入和輸出,及錯誤輸出。在 default 之下,stdin 是接著 keyboard,stdout 是接著 tty (你想成 monitor 就好了),stderr 也是接著 tty 資料流既然是"流",那當然可以轉向。 "<" 這個指令呢就是把 stdin 接上後面的檔案,如: $cat < test.txt ">" 是把 stdout 寫入後面的 file。 如檔案內有東西,會把檔案內的東西清空才寫入。 ">>" 和 ">" 相同 ,但不會把檔案內的東西清空,而是寫在檔尾,如: $cat test.txt >> foo "|" (pipe) 這個呢則是把前面的stdout 接到後面程式的 stdin,如: cat test.tx...