1,创建切换脚本
sudo nano /usr/local/bin/display-toggle
在此文件里写入:
#!/bin/bash
# 配置文件路径
CONF_FILE="/usr/share/X11/xorg.conf.d/10-dummy.conf"
# 检查当前状态
if [ -f "${CONF_FILE}.disabled" ]; then
echo "正在启用虚拟显示器..."
sudo mv "${CONF_FILE}.disabled" "$CONF_FILE"
MODE="virtual"
else
echo "正在启用物理显示器..."
sudo mv "$CONF_FILE" "${CONF_FILE}.disabled"
MODE="physical"
fi
# 重启显示服务
if systemctl is-active --quiet display-manager; then
echo "重启显示管理器..."
sudo systemctl restart display-manager
else
echo "X服务器未运行,更改将在下次启动时生效"
fi
echo "已切换到 $MODE 显示模式"
设置执行权限
sudo chmod +x /usr/local/bin/display-toggle
2,创建状态检查命令
sudo nano /usr/local/bin/display-status
在此文件里写入:
#!/bin/bash
CONF_FILE="/usr/share/X11/xorg.conf.d/10-dummy.conf"
if [ -f "$CONF_FILE" ]; then
echo "当前模式: 虚拟显示器 (10-dummy.conf 已启用)"
else
echo "当前模式: 物理显示器 (10-dummy.conf 已禁用)"
fi
# 验证当前显示提供者
echo -n "活动显示提供者: "
xrandr --listproviders | grep "name:" | cut -d':' -f2
设置执行权限
sudo chmod +x /usr/local/bin/display-status
3,示例效果
(切换显示器模式)
# 切换到物理显示器模式
sudo display-toggle
# 切换到虚拟显示器模式
sudo display-toggle
(检查当前状态)
display-status
#示例输出
#当前模式: 物理显示器 (10-dummy.conf 已禁用)
#活动显示提供者: vc4