如何从Whiptail返回值--yesno
问题描述:
我正在创建一个shell脚本以在我的覆盆子pi上运行。一路上,我试图简化一些重复的代码,我想为下面的whiptail函数打包。如何从Whiptail返回值--yesno
function yesno() {
answer=$(whiptail --yesno "$1" 0 0 3>&1 1>&2 2>&3)
echo $answer
}
此函数不回应任何内容,我想知道我的语法是否是错误的。在我的终端中输入yesno "Your question"
时,该功能会触发。
也回显$?
没有帮助,因为它似乎没有捕获任何数据时,不使用return
函数。
试图使用return
时出现错误,说我需要返回一个整数。
我已经成功在if
声明运行该功能,并确信它没有返回一个0或1
if whiptail --yesno "Are you sure you want to clear all SSH keys from the list?" 0 0; then
# Do stuff
fi
任何人知道如何倒--yesno鞭尾函数I的输出已经显示为一个变量?
答
也许你的意思是像
#!/bin/bash
function yesno() {
answer=$(whiptail --yesno "$1" 0 0 3>&1 1>&2 2>&3; echo $?)
echo "Answer <$answer>"
}
yesno "Hello world"
这在子shell打印$?
(0 =是,1 =否)。