使用 "exec" 命令行为从终端启动 Linux 图形应用程序
Launch Linux graphical application from a terminal with "exec" command behaviour
我在 Linux 上使用 i3-wm,我试图模仿程序启动器的行为。我已经知道 "exec" 命令,对于非图形命令,它似乎可以正常工作。
例如,如果我在终端中输入:
exec sudo ls -aR
我会得到当前目录下所有文件夹和文件的列表。命令退出后,终端消失
但是如果我在终端中输入:
exec chromium-browser
我最终会得到两个 windows:一个是铬;另一个是铬;另一个是启动 chromium 的终端,现在被 chromium 用来打印调试信息。
我如何从终端启动 chromium-browser 并在隐藏或杀死启动它的终端的同时保持它的活动?
您需要关闭 chromium-browser 进程。为此,您可以使用 nohup 命令,例如 nohup chromium-browser &
。查看 this 了解更多信息。
我找到了答案。我不得不在后台启动一个图形应用程序 ("&"),然后像这样“拒绝”它:
chromium-browser & disown
在我的例子中,我必须在这样做之后关闭终端:
chromium-browser & disown && exit
注意使用“&&”而不是“;”。如果放弃没有工作,则不退出。
顺便说一下,在我的例子中,我发现制作一个别名 x
并将 disown && exit
作为值可能会派上用场。如果我想从终端启动图形应用程序,那么我就是这样做的:
chromium-browser &x
我只是觉得提及这件事可能会对其他人有所帮助。
我在 Linux 上使用 i3-wm,我试图模仿程序启动器的行为。我已经知道 "exec" 命令,对于非图形命令,它似乎可以正常工作。
例如,如果我在终端中输入:
exec sudo ls -aR
我会得到当前目录下所有文件夹和文件的列表。命令退出后,终端消失
但是如果我在终端中输入:
exec chromium-browser
我最终会得到两个 windows:一个是铬;另一个是铬;另一个是启动 chromium 的终端,现在被 chromium 用来打印调试信息。
我如何从终端启动 chromium-browser 并在隐藏或杀死启动它的终端的同时保持它的活动?
您需要关闭 chromium-browser 进程。为此,您可以使用 nohup 命令,例如 nohup chromium-browser &
。查看 this 了解更多信息。
我找到了答案。我不得不在后台启动一个图形应用程序 ("&"),然后像这样“拒绝”它:
chromium-browser & disown
在我的例子中,我必须在这样做之后关闭终端:
chromium-browser & disown && exit
注意使用“&&”而不是“;”。如果放弃没有工作,则不退出。
顺便说一下,在我的例子中,我发现制作一个别名 x
并将 disown && exit
作为值可能会派上用场。如果我想从终端启动图形应用程序,那么我就是这样做的:
chromium-browser &x
我只是觉得提及这件事可能会对其他人有所帮助。