为什么$ DISPLAY有时:0,有时:1

Tro*_*ong 3 bash environment-variables

我正在使用xmacro来录制键盘快捷键,这需要$DISPLAY重播.但是,有时我的$DISPLAY:0,有时:1,所以每次发生这种情况我都必须手动更改值.为什么它会不断变化,有没有办法将$DISPLAY值设置为:0:1永久?(我可以DISPLAY=:0在一个终端中导出,但这不会改变$DISPLAY新终端的值.)

Aar*_*lla 5

该编号标识显示("共享键盘和鼠标的显示器集合")

:0 通常是本地显示器(即当你坐在它前面时计算机的主显示器).

:1 当您启用显示转发并登录到远程计算机时,通常由SSH等服务使用.

它也可以通过尝试"修复"它的启动脚本进行修改.要查明是否发生这种情况,请运行

grep DISPLAY ~/.??*
Run Code Online (Sandbox Code Playgroud)

.??*是没有...(父和当前文件夹)获取所有点文件的技巧.

如果没有显示任何信息,检查/etc/profile,/etc/bash*/etc/bash*/*以类似的方式.

我找不到xmacro的有用手册,但大多数X11应用程序支持该选项-d-display覆盖$DISPLAY.

如果这不起作用,请xmacro.sh使用以下内容创建:

 #!/bin/bash

 export DISPLAY=:0
 exec xmacro "$@"
Run Code Online (Sandbox Code Playgroud)

现在调用该工具,xmacro.sh它应该始终有效.