天天看點

Spark修煉之道(基礎篇)——Linux大資料開發基礎:第十四節:Shell程式設計入門(六)

case控制結構

read指令

管道

case控制結構文法格式:

case控制結構較之于if條件判斷,代碼可讀性更強,典型的應用場景是:編寫的shell script可能會跨越好幾種平台,如linux、freebsd、solaris等等,而各平台之間,多多少少都有不同之處,有時候需要判斷目前正在那一種平台上執行。此時可以利用uname指令與case控制結構搭配使用,具體代碼如下:

read指令在shell腳本中很重要,學用這個指令來接受使用者輸入,直接上代碼示範它的使用方法:

上面給出的代碼在輸完12後,敲回車後腳本将繼續運作,對變量num輸出。read指令還有一種用法是,當輸出的字元滿n個後腳本繼續運作,具體使用如下:

有時候我們要輸入密碼等敏感字元,此時可以使用-s 選項,具體使用代碼如下:

還有一種常用的用法是逾時未輸入則繼續運作腳本,未輸入的變量可以用預設的值

管理在linux作業系統中是一個非常重要的概念,在實際使用中使用非常廣泛,管理指令的格式如下:

指的是cmd1的輸出作為cmd2的輸入,cmd2的輸出又作為cmd3 的輸入,如此串起來很像一個管道(pipe),例如下面這個指令常用來檢視ssh服務是否啟動: