Bash
從我的 bash 腳本中選擇 cli 菜單選項
我正在執行一個 bash 腳本,但是當它進入一個必須進行選擇的菜單時,程序會凍結我知道,對於 YES,我可以在我的命令中使用 -y,但在以下情況下:
- 我需要從選項列表中選擇/輸入一個數字
- 輸入姓名或電子郵件
我怎樣才能做到這一點?
奇怪的是,大多數搜尋結果都返回瞭如何使用 bash 創建菜單,而不是如何讓腳本輸入選擇/值。
您可以只通過管道傳輸帶有命令答案的文本:
printf "bot\nn\nJava" | ./questions.sh
或者
expect
像這樣使用:#!/usr/bin/expect -f set timeout -1 spawn ../4/questions.sh expect "Your name: " send -- "expect\n" expect "Are you human?\r y/n: " send -- "n\r" expect "What is your favorite programming language?\r Your answer: " send -- "Java\r" expect eof
更多資訊在這裡 https://www.baeldung.com/linux/bash-interactive-prompts