I'm trying to write a bash script to convert a user inputted answer to MD5 and compare it to the MD5 hash I already have to see if it's the same, but I'm getting a syntax error
Syntax error near unexpected token 'fi'
The code:
#!/bin/bash
# Check if you're right!
declare -x answer=6f22bf74918703932091343ba9c64402
echo "Enter your answer, follow by [ENTER]:"
read userAnswer
md5sum userAnswer > hashedAnswer
if [ answer == hashedAnswer ]
then
echo "Correct! You're right! It was him! Maybe I shou----"
echo "-You get run over, silenced before you can present your proof-"
else
echo "Wrong, try again!"
fi
Any help would be greatly appreciated.
Change these two lines:
md5sum userAnswer > hashedAnswer
if [ answer == hashedAnswer ]
to:
hashedAnswer=$(printf "%s" "$userAnswer" |md5sum)
if [ "$answer" == "$hashedAnswer" ]
Example:
#!/bin/bash
# Check if you're right!
answer="b326b5062b2f0e69046810717534cb09 -"
echo "Enter your answer, follow by [ENTER]:"
read userAnswer
hashedAnswer=$(printf "%s" "$userAnswer" |md5sum)
if [ "$answer" == "$hashedAnswer" ]
then
echo "Correct! You're right! It was him! Maybe I shou----"
echo "-You get run over, silenced before you can present your proof-"
else
echo "Wrong, try again!"
fi
N.B: the answer here is true
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加