当我启动X11.app时,它会自动启动一个xterm。我早就从“普通”的xterm切换到了rxvt-unicode,所以初始的xterm就像一个不被使用的墙花一样挂在那里。虽然这并不特别糟糕,但它破坏了整体的外观,所以我想停止它的启动。我该怎么做?
defaults write org.macosforge.xquartz.X11 app_to_run /usr/bin/true
由于我现在不在我的OSX电脑上,我将为您提供这个无敌的答案。'true' 不执行任何操作并成功退出,所以我设置它在启动时运行。
苹果的旧版X11:defaults write org.x.X11 app_to_run $(which true)
对于 XQuartz:defaults write org.macosforge.xquartz.X11 app_to_run $(which true)
对于 MacPorts X11.app:defaults write org.macports.X11 app_to_run $(which true)
如果你想知道,$(which true)
将使一行变成如下形式:defaults write org.x.X11 app_to_run /bin/true
。
我写成 $(which true)
,因为我不在我的 Mac 上,并且记不清它是在 /bin/true 还是其他位置。
我还读到可以将这些设置为 ''
(两个单引号,也就是什么都没有),它会产生相同的效果。不过我还没有尝试过。
(来源:https://xquartz.macosforge.org/trac/wiki/X11-UsersFAQ)
(由于我忘记在我的示例中添加非常重要的'app_to_run'而进行了编辑)
''
对我起作用了。 - Christian/bin/true
?我完全不知道(我的 Mac 无法运行 Big Sur)。 - Wyatt Ward
org.x.X11
,我将其设置为''
,这似乎和/usr/bin/true
一样有效。 - Andrew Staceyxinit
命令。而该命令会运行shell脚本/usr/X11/lib/X11/xinit/xinitrc
,然后该脚本会运行/usr/X11/lib/X11/xinit/xinitrc.d/
目录下的脚本。在该目录下,你会找到98-user.sh
,它会执行所有文件名以.sh
结尾的可执行shell脚本,这些脚本位于~/.xinitrc.d/
目录中。需要注意的是,通过其中一个后续的shell脚本使用exec
命令来运行你所希望的窗口管理器,可以绕过默认执行xterm
的情况。 - Harald Hanche-Olsen