echo $DISPLAY
时间: 2023-08-26 19:09:13 浏览: 90
根据引用[1]和引用[2]的内容,当使用root用户执行echo $DISPLAY命令时,输出的值应该是实际的DISPLAY值。而根据引用[3]的内容,在进行图形化安装时,如果是登录到系统的可视化界面上,在root用户下执行echo $DISPLAY命令,一般情况下会没有输出值。因此,具体的echo $DISPLAY命令的输出值取决于具体的环境和操作。
相关问题
echo $DISPLAY输出为空
当执行echo $DISPLAY命令时,如果输出为空,可以按照以下步骤进行处理。首先,确保你是以root用户登录系统的可视化界面。然后,打开终端并执行echo $DISPLAY命令,如果仍然没有输出值,可以尝试关闭该终端窗口,然后重新打开终端。再次执行echo $DISPLAY命令,一般情况下应该会输出一个值,例如:2.0。如果仍然没有输出值,可以尝试执行xhost +命令来进行设置。最后,以root用户身份执行echo $DISPLAY命令,以获取实际的输出值。然后,进入到软件安装目录,执行./DMInstall.bin命令进行图像化安装。如果你希望在切换到安装用户时不再输入export DISPLAY=:2.0命令,可以将该语句添加到该用户的配置文件.bash_profile中,并执行. ./.bash_profile命令使配置生效。这样,你就可以直接执行图形化安装命令进行安装了。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [安装达梦8数据库_linux系统图形化界面无法显示问题汇总](https://blog.csdn.net/m0_52539130/article/details/124668965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
local id1=$(echo $DISPLAY_ID | awk '{print $1}') local id2=$(echo $DISPLAY_ID | awk '{print $2}') echo $id1 echo $id2 if [ "$id1" > "$id2" ]; then echo $id1 else echo $id2 fi 我就是想那个大输出那个优化
这段代码的作用是获取当前设备的显示屏ID,并将其赋值给变量DISPLAY_ID。然后,使用echo和awk命令将DISPLAY_ID中的第一个和第二个ID分别赋值给变量id1和id2。接着,使用if语句判断id1是否大于id2,如果是,则输出id1,否则输出id2。
下面是这段代码的优化版本:
```
ids=($(dumpsys window | awk '/displayId=/ {print $1}' | sed 's/displayId=//g'))
max_id=${ids[0]}
for id in "${ids[@]}"; do
if [ "$id" -gt "$max_id" ]; then
max_id=$id
fi
done
echo $max_id
```
这个优化版本中,首先使用dumpsys、awk和sed命令获取当前设备的所有显示屏ID,并将其存储到数组ids中。然后,使用for循环遍历ids数组,并使用if语句判断当前ID是否比之前的max_id大,如果是,则更新max_id的值。最后,输出max_id即可,因为max_id变量中存储的是最大的显示屏ID。