4

我有一个由 anacron 每天启动的 bash 脚本,它不时需要一些用户输入。这应该通过图形对话框来完成,例如 kdialog 提供。

有三个选项需要考虑:

  • “是的,今天开始任务” -> 运行任务
  • “不,今天不启动任务” -> 退出脚本
  • 错误,用户未完全登录到 X -> 1 分钟后重试

到目前为止,这是我的代码(脚本以相关用户身份运行):

while ! kdialog --title "Task $DATE" --msgbox "Please make preparations for today's task and press OK"
do
   logger -t task "waiting for display to become available"
   sleep 1m
done

这行得通,除了我没有看到任何使用 YesNo 对话框的选项并区分按钮单击“否,今天不开始”和“错误,X 服务器尚不可供用户使用”——因为kdialog 在两种情况下都返回退出代码 1。

我考虑过使用不同的程序来检查 X 服务器是否已经可用,但我没有想出使用哪个程序的想法。有人有更好的主意吗?(使用带有 KDE4 的 Kubuntu 10.04,如果需要该信息......)

4

3 回答 3

2

查看:

xprop -root

xprop带有x11-utils软件包,很可能与 X11 一起安装...

另请查看man 1 xprop中的SEE ALSO部分:

也可以看看
       X(7)、xdpyinfo(1)、xwininfo(1)、xdriinfo(1)、glxinfo(1)、xvinfo(1)
于 2012-06-24T20:21:16.610 回答
0

只需使用任何标准的 X 程序。,我建议,xdpyinfo因为它只是文本。

于 2012-06-24T14:49:03.593 回答
-1

考虑将其设为自动启动条目,因为 1)您可能实际上并不需要每天启动它,以及 2)否则您需要找到显示。

于 2012-06-25T00:56:50.050 回答