xinit /usr/bin/firefox
似乎做了预期的事情:在没有窗口管理器的情况下运行 Firefox。
xinit firefox
xterm
看起来做的差不多,只是落后了一点。
有人可以解释一下这里发生了什么吗?
答案1
我怀疑你根本没有文件~/.xinitrc
。当xinit
启动时,它会查找该文件,如果没有找到它,则会运行一个微小的xterm
.确切地说,它运行:
xterm -geometry +1+1 -n login -display :0
另外,命令行xinit
是:
xinit [ [ client ] options ... ] [ -- [ server ] [ display ] options ... ]
--
我们可以忽略(右侧)之后的部分,因为那是针对服务器(X 服务器)端的,并且您只是在其中使用默认值。现在,对于客户端(左侧),您有一些模棱两可的东西:[ [ client ] options ... ]
。换句话说,xinit
优先考虑选项代替客户。
该行为实际上在以下描述man
:
客户端程序名称和服务器程序名称都必须以斜杠 (/) 或句点 (.) 开头。否则,它们将被视为参数,并附加到各自的启动行。这样就可以添加参数(例如,前景色和背景色),而无需重新输入整个命令行。
所以:
/usr/bin/firefox
是X客户端,所以执行firefox
是一个客户选项,所以xterm
执行,使用上面的参数和一个额外的参数(选项):“firefox”。正是这样:xterm -geometry +1+1 -n login -display :0 firefox