Whiptail 是一個允許 shell 腳本顯示對話框的工具。這使得 shell 腳本看起來更酷、更專業,但仍然提供了廣泛的功能。
在本模塊中,您將學習如何使用 鞭尾 使用 shell 腳本讓它們變得更好!
安裝鞭尾
安裝鞭尾非常容易。要安裝,請鍵入:
$ sudo apt install whiptail
鞭尾箱
您可以為鞭尾選擇不同類型的盒子。以下是 Whiptail 提供的一些更重要的功能。
1.添加一個是/否框
創建這樣一個盒子的語法是:
$ whiptail --yesno [TEXT] [HEIGHT] [WIDTH]
[はい]//[いいえ]框允許您根據您的選擇控制執行流程。
如果用戶選擇 Yes,whiptail 返回值 1。否則,如果用戶選擇否,則返回值 0。 如果whiptail 失敗或用戶沒有選擇退出,則返回-1。
2.消息框
生成消息框的語法是:
$ whiptail --msgbox [TEXT] [HEIGHT] [WIDTH]
消息框是[OK]除了只有按鈕[はい]//[いいえ]非常類似於一個盒子。出現提示時按 Enter,shell 腳本將繼續運行。
3.輸入框
輸入框是鞭尾的一些最重要的特徵。創建輸入框的語法是:
$ whiptail --inputbox [TEXT] [HEIGHT] [WIDTH] [INIT]
此外,如果啟用滾動並且輸入字符串長於對話框的寬度,則輸入字段將滾動。您還可以指定一個字符串(INIT),用於初始化輸入框。如果出現拼寫錯誤,用戶還可以使用退格鍵更正輸入。

默認情況下,消息輸出到 標準誤差 但是,您也可以將輸出存儲在變量中並在 shell scipts 中使用它。
4. 鎖箱
密碼框與輸入框非常相似,只是您輸入的內容不會反映給用戶。它的語法也類似於輸入框。
$ whiptail --passwordbox [TEXT] [HEIGHT] [WIDTH] [INIT]
您也可以使用 INIT 來指定“默認密碼”,但實際上並不推薦這樣做。

4.菜單框
顧名思義,菜單框顯示可用選項的列表。相同的語法如下:
$ whiptail --menu [TEXT] [HEIGHT] [WIDTH] [MENU HEIGHT] [TAG] [ITEM]
這裡,[プロンプト]確定菜單中顯示的項目數[メニューの高さ]也必須指定。接下來,您需要指定商品和標籤以識別商品。鞭尾是可滾動的,因此您可以指定任何數字

最後,whiptail 將選定的標籤打印到 標準誤差..
5. 其他箱子
仍然有各種盒子可用於鞭尾,例如:
- 消息窗口
- 列錶框
- 單箱
- 儀器箱
您可以使用 man 命令獲得這些內容的完整概述。
$ man whiptail
鞭尾選項
您可以使用這些標誌來進一步自定義whiptail 提示。
- -清除 :完成後,屏幕將被清除並顯示屬性。如果啟用了備用屏幕切換,這對 xterms(和後代)不起作用。在這種情況下,俚語寫入(並清除)備用屏幕。
- –defaultno :將光標移至“否”按鈕打開對話框。
- – 是按鈕 [TEXT] :更改是按鈕文本
- – 沒有按鈕 [TEXT] :無按鈕更改文本
- -項目內部 :菜單、清單和單選列表小部件僅顯示標籤,不顯示項目字符串。菜單小部件仍然需要指定一些項目,但列表和單選只需要標籤和狀態。
- -標籤 :不在菜單、清單和單選列表小部件中顯示標籤。
- – 輸出-FD [FD] : 直接輸出whiptail到特定文件的描述還
- -標題 [TEXT] : 設置框的標題
結論是
因此,在本模塊中,您學習瞭如何有效地使用whiptails 來創建有效的shell 腳本。這使得 shell 腳本看起來非常專業,增強了用戶體驗。您還可以從手冊頁中更詳細地探索該工具。