我正在尝试为一个名为 showbf 的程序制作一个小型监视器,该程序每隔一定时间打印一次更新。
我最好的尝试是以下
ssh user@server.foo "exit"
if [ $? -ne 0 ]
then
ssh-add < /dev/null
fi
while true
do
resources=$(ssh user@server.foo "showbf")
if (echo "$resources" | grep -q "[0-9] procs")
then
echo $(echo "$resources" | awk '/[0-9] procs/ {print $1,"for",$5}')
else
echo "No procs available."
fi
if [[ $? == 0 ]] || [[ $? == 1 ]]
then
exit 0
fi
sleep 1
done | zenity --text-info --height=200 --width=300 \
--title "Resources available for immediate use (showbf)"
我真的不喜欢它,因为它会将结果附加到预览中。它变得非常混乱。我想使用 zenity --list 之类的东西(结果是 2 列,可用的 proc 数量和 walltime)。但是一旦 zenity 读取数据,它就不会更新其内容。有任何想法吗??
使用 while 循环重新创建窗口不是我想要的,因为新窗口被替换在屏幕的中心。
非常感谢萨尔瓦多