我在 bash 中作業,我正在努力接受用戶的輸入,然后將它們移動到一個函式中。我正在使用 case 陳述句讓它作業,這是我目前正在使用的代碼:
read -n1 -p "Save to log? [y,n] " choice \n
case $choice in
y|Y) echo yes ;;
n|N) echo no ;;
*) echo dont know ;;
esac
function saveToLog(){
echo Saving to log
}
我已經嘗試了我認為可以在這里作業的方法:
read -n1 -p "Save to log? [y,n] " choice \n
case $choice in
y|Y) saveToLog() ;;
n|N) echo no ;;
*) echo dont know ;;
esac
function saveToLog(){
echo Saving to log
}
但這不起作用,我已經做了一些谷歌搜索,但我找不到使用 case 陳述句的解決方案,因為我想繼續使用這個系統。
謝謝你。:)
uj5u.com熱心網友回復:
()后面不需要saveToLog:
#!/bin/bash
read -n1 -p "Save to log? [y,n] " choice \n
case $choice in
y|Y) saveToLog ;;
n|N) echo "no" ;;
*) echo "dont know" ;;
esac
function saveToLog(){
echo "Saving to log"
}
會叫saveToLog上y|Y
注意:saveToLog必須按原樣宣告(使用function關鍵字)才能使其作業。請查看此 Stackoverflow 問題以獲取有關function和的更多資訊()
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/341774.html
標籤:猛击
下一篇:Bash檢查arg值
