检测显示在 Linux 中是否有效

Reg*_*00x 3 linux display bash

有没有办法以受控方式检测显示是否有效?例如,如果我设置了$DISPLAY=anydisplay$DISPLAY=0.0,有没有办法检查我是否有权访问anydisplay0.0是否是有效的显示?我正在编写一个旨在从 bash 脚本启动的程序,其想法是警告用户如果他们的显示无效并在“控制台”模式下运行该程序。

小智 5

xhost 是一种探测显示可访问性的简约方式。

#!/usr/bin/env bash

xhost +si:localuser:$( whoami ) >&/dev/null && { 
    echo "GUI"
    myapp --gui
} || {
   echo "console"
   myapp --console
}
Run Code Online (Sandbox Code Playgroud)