xinit /usr/bin/firefox似乎做了人们期望的事情:在没有窗口管理器的情况下运行火狐。
xinit firefox似乎也做了类似的事情,但后面运行了一个小xterm。
有人能解释一下这里发生了什么吗?
发布于 2017-03-08 00:46:23
我怀疑您根本没有~/.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登录-display :0 firefoxhttps://unix.stackexchange.com/questions/349752
复制相似问题