2
我有一個bash腳本,它的一個功能是檢查字符串(密碼)的長度。密碼需要有特殊字符。我使用$ {#VAR}來檢查字符串是否合適,但是正在解釋特殊字符,因此計數已關閉。下面是有問題的代碼:在Bash scipt中打印特殊字符
userpass="$1"
if [[ "${#userpass}" -lt 8 ]]; then
echo 'Short Password'
fi
字符串像Q7cS $ ZpR8eSi和pNbTb $ IhkyUouDcZ行程起來(以美元符號或符號的任何東西)。我已經使用wc -c
代替也試過,但我得到了同樣的問題
你有單引號引用的字符串。不清楚你如何餵食'$ 1',但假設cmd線,你必須做'./myPswdChkr.sh'Q7cS $ ZpR8eSi''。模型外殼的Pluse-uno Q.簡潔幷包含示例輸入!祝你好運。 – shellter
感謝您的建議,我的問題是密碼是可變的。該腳本用於檢查密碼的複雜性以及它是否遵守組織的密碼策略。用戶將輸入./myPswdChkr.sh他們的密碼,腳本會告訴他們密碼是否合適。 –
我無法重現該問題。 '爲userpass = '$ pNbTb IhkyUouDcZ'; echo $ {#userpass}'輸出:'16' – Cyrus