0

我是 bash 新手,我正在尝试 ping 主机并显示平均 ping 时间。我想在 YAD 窗口中自动更新该值。我将它设置在 while 循环中,但问题是我必须关闭窗口才能重新填充新值。yad能实现这样的动态更新吗?

谢谢

#!/bin/bash

HOSTS="google.com"
COUNT=2

while true
do 
  echo $(yad --title="Latency Monitor" --text="$(ping -c $COUNT $HOSTS 2>&1 | tail -1| awk -F/ '{print $6}' )" --text-align=center --no-buttons --height=50 --width=300)
done
4

1 回答 1

0

I know this is old - but just adding

--timeout 1

at the end of the yad switches will make it auto close after 1 second. So it becomes:

#!/bin/bash

HOSTS="google.com"
COUNT=2

while true
do 
  echo $(yad --title="Latency Monitor" --text="$(ping -c $COUNT $HOSTS 2>&1 | tail -1| awk -F/ '{print $6}' )" --text-align=center --no-buttons --height=50 --width=300 --timeout 1)
done
于 2020-12-27T15:31:28.087 回答