我只是在zenity中测试了一些函数并遇到了一些问题。
我希望能够在运行zenity -question
变量时分配用户输入的内容,但是当我这样做时,我无法回显用户输入的内容。
我使用的代码是:
#!/bin/bash
ans=$(zenity --question --title="Confirm" --text="Please choose yes or no.")
echo $ans
在其他论坛上,人们建议:
#!/bin/bash
zenity --question --title="Confirm" --text="Please choose yes or no."
echo $?
这有效,但我知道$?
只包含最近运行的命令的退出状态。我希望能够将用户输入的内容保存到变量中,以便稍后我可以在脚本中使用答案,即使我已经运行了一些已经覆盖了$?
的答案。
我的问题是,使用我的代码,当我回显变量时,不会返回任何内容。
有没有人能解决这个问题?
由于
答案 0 :(得分:1)
退出状态包含答案:
#!/bin/bash
zenity --question --timeout=3 --title="Confirm" --text="Please choose YES or NO within 3 seconds."
answer=$?
if [ "$answer" -eq 0 ]; then
echo 'YES'
elif [ "$answer" -eq 1 ]; then
echo 'NO'
elif [ "$answer" -eq 5 ]; then
echo 'timeout'
fi
exit 0