网络管理员往往需要发送消息到网络上的节点,在用户桌面上显示弹出窗,GUI工具,可以创建包括文本框,输入框在内的窗口,SSH可以使用连接远程主机上的shell.GNU/Linux发行版不默认zenity,可以用软件包来安装

zenity是一种脚本化对话框创建工具,还有一些其他的对话框,gdiglog,kdialog,xdialog,作为面向GNOME桌面环境的一个工具,非常灵活

zenity创建一个信息框,可以使用

zenity –info –text “This is a message”

这个命令会显示一个长江口,上面有着 This is a message

我们可以使用SSH在远程主机上运行zenity语句,要通过SSH在远程主机上执行这个语句,可以使用

ssh user@remotehost ‘zenity –info –text “This is power” ‘

不过,会返回一个类似的错误

图片

zenity 依赖于Xserver,Xserver是一个守护进程,可以再屏幕上绘制GUI

可以使用DISPLAY=:0来指示Xserver相关实例的情况

所以可以改写为

ssh username@remotehost ‘export DISPLAY=:0; zenity –info –text “This is a message” ‘

这样就可以显示在窗口管理器了

我们可以以一种多播的方式向着多台远程主机弹出窗口

#! /bin/bash

IP_LIST=”192.168.0.5 192.168.0.03 192.168.0.13″

Usr=”username”

COMMAND=’export DISPLAY=0;zenityp –info –text “This is a message” ‘

for host in $IP_LIST

for host in $IP_LIST

do

ssh $USER$host “$COMMAND” &

done

我们列出了一组相对应的IP地址,使用U型你换来进行迭代执行脚本

SSH语句的末尾有一个&,这个符号的作用是将SSH放在后台运行

但是会消耗一个线程

发表评论

邮箱地址不会被公开。 必填项已用*标注