【发布时间】:2018-10-22 00:45:25
【问题描述】:
我有一个为游戏编写的简单脚本。该脚本是从游戏用户主目录中的 ~/.profile 调用的,它应该模拟一个假登录,该登录在成功比较两个变量后运行另一个脚本。它工作了一会儿,然后突然停止工作。 (编辑:当我的意思是它停止工作时,我并不是说我改变了一些东西并且它把一切都搞砸了,我的意思是它在一个晚上没有碰它之后就停止了工作。)
#!/bin/bash
pause(){
read -p "Place [CARD] on scanner and press [ENTER] key..."
}
init(){
cat /etc/issue
pause
READ=`sudo ~/bin/Read.py`
CARD=`cat ~/var/keycode.txt`
if [ "$READ" == "$CARD" ]; then
~/bin/mmenu.sh
else
echo "Incorrect... Please try again"
fi
}
while true
do
init
done
我做错了什么? 提前致谢。
编辑: Read.py的输出是12345,cat keycode.txt的输出是12345 然而,它似乎无法让它们正确比较。
脚本已被简化,Read.py 不打印,只是将其内容写入一个名为 rcard.txt 的文件,两个变量都像这样:
CARD=`cat ~/var/kcard.txt`
READ=`cat ~/var/rcard.txt`
尽我所能,即使使用 [ "$READ" == "$CARD" ],它仍然无法通过 if 语句。即使内容完全相同。 我真的不明白。
【问题讨论】: