我有以下bash腳本:猛砸檢查如果MySQL命令失敗,
MYSQL="which mysql"
SQL="CREATE DATABASE IF NOT EXISTS TEST;"
read -p -s "Enter mySQL password:" DBPASS
$MYSQL -root -p$DBPASS -e "$SQL"
if [ "$?" -eq 0 ];
then
echo "Failed."
else
echo "Done."
fi
即使我輸入密碼錯誤的腳本說"Done."
,因爲它不容檢測mysql命令錯誤...
我需要能夠在有人輸入錯誤密碼時正確顯示"Error."
消息。
幫助讚賞。
也許使用'expect' - http://expect.sourceforge.net/ - 會是一個更好的選擇 –
更換'MYSQL = 「MySQL的哪些」''用MYSQL =」 $(其中mysql)「'。 – Cyrus
'$(其中mysql)'沒有解決問題... – Mendes