外圍程序允許您組合及分組指令,以進行條件式執行。每條指令都會傳回決定操作成功與否的離開碼。如果為 0 (零),則說明指令成功,任何其他離開碼都代表特定於指令的錯誤。
以下清單顯示了可對指令分組的方式︰
指令1 ; 指令2
以順序執行指令。不檢查離開碼。下行透過 cat 顯示檔案內容,然後透過 ls 列印其檔案內容,而不管其離開碼為何︰
cat filelist.txt ; ls -l filelist.txt
指令1 && 指令2
如果左邊的指令成功,即會執行右邊的指令 (邏輯「與」)。下行顯示檔案內容,並且僅在前面的指令成功時才會列印其檔案內容 (將其與此清單中的上一個項目進行比較)︰
cat filelist.txt && ls -l filelist.txt
指令1 || 指令2
如果左邊的指令失敗,即會執行右邊的指令 (邏輯「或」)。下行將只會在於 /home/tux/foo 中建立目錄失敗時,才會在 /home/wilber/bar 中建立目錄︰
mkdir /home/tux/foo || mkdir /home/wilber/bar
funcname(){ ... }
建立外圍程序函數。可以使用位置參數存取其引數。下行定義了可列印較短訊息的函數 hello︰
hello() { echo "Hello $1"; }可以按以下格式呼叫此函數︰
hello Tux
將會列印︰
Hello Tux