我正在撰寫一個密碼驗證器,在所有測驗之后,我需要回答用戶密碼是否有效。如果有效,我將以綠色寫入密碼 如果無效,我將以紅色寫入密碼 我的問題是顏色不會停止,其余的輸出也會是彩色的,例如:您的密碼無效! ffsdmkl !您的密碼必須至少包含 10 個字符,您的密碼必須同時包含字母和數字 --> 從密碼的開頭到句子的結尾都會被著色。我該如何修復它?
謝謝!!
green='\033[0;32m'
red='\033[0;31m'
if [[ $valid1 == true && $valid2 == true && $valid3 == false ]]; then
echo -e "Your password is valid! ${green} ${PASSWORD} ${clear}!"
else
echo -e "Your password is NOT valid! ${red} ${PASSWORD} !"
echo $RESULT
fi
uj5u.com熱心網友回復:
您還需要定義變數clear,并在文本不再是彩色時使用它。因為clear也是 Bash 命令,我會將變數名稱更改為其他名稱,例如reset:
green='\033[0;32m'
red='\033[0;31m'
reset='\e[0m'
if [[ $valid1 == true && $valid2 == true && $valid3 == false ]]; then
echo -e "Your password is valid! ${green}${PASSWORD} ${reset}!"
else
echo -e "Your password is NOT valid! ${red}${PASSWORD} ${reset}!"
echo $RESULT
fi
uj5u.com熱心網友回復:
嘗試這個:
green='\033[0;32m'
red='\033[0;31m'
reset='\u001b[0m'
if [[ $valid1 == true && $valid2 == true && $valid3 == false ]]; then
echo -e "Your password is valid! ${green} ${PASSWORD} ${reset}!"
else
echo -e "Your password is NOT valid! ${red} ${PASSWORD} ${reset}!"
echo $RESULT
fi
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/359475.html
下一篇:如何從標準輸出執行命令?
