终止显示管理器并使用脚本启动另一个显示管理器

终止显示管理器并使用脚本启动另一个显示管理器

我有一个小脚本,用于终止 gdm3 并启动 X 会话。它可以工作,但我必须运行它 3 次。

export DISPLAY=:0
var = $(pidof gdm3)
kill $(var)
X :0 &
xterm &
export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so

我该怎么做才能让它一次性完成?

答案1

我认为您的问题与父进程和子进程有关。当 gdm3 启动时(考虑到您的脚本需要运行三次),它表明有一个父进程和两个子进程。

尝试将你的脚本编辑为循环;如下所示:

导出 DISPLAY=:0 var = $(pidof gdm3) 当 [ !-z "$var" ] 执行 kill $(var) var = $(pidof gdm3) 完成 X :0 & xterm & 导出 LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so

相关内容