gpt4 book ai didi

linux - 通过类似守护进程的 bash 运行程序

转载 作者:太空宇宙 更新时间:2023-11-04 05:47:29 25 4
gpt4 key购买 nike

通常我只在终端中运行 GUI 程序(如 libreoffice),但这意味着运行应用程序时必须打开终端。

如何让GUI程序在关闭终端的情况下继续运行?

最佳答案

您需要 bash 命令 nohup,该命令会断开进程与终端的连接,以便即使终端关闭,进程也能继续运行。使用它来运行“nautilus”,如下所示:

nohup nautilus

正如您将看到的,它警告来自 nautilus 的任何标准输出都保存在名为 nohup.out 的文件中。如果您不关心 GUI 应用程序的标准输出,并且不想创建这些 nohup.out 文件,则可以将标准输出重定向到/dev/null。如果这样做,nohup 会保存 stderr。所以你需要重定向两者:

nohup nautilus >/dev/null 2>&1

此外,由于我不明白的原因,这现在是一个阻塞调用(即您没有收到终端提示符。)因此您需要在后台运行它:

nohup nautilus >/dev/null 2>&1 &

我在 .bashrc 中创建了一个 Bash 函数,这样我就不需要输入以上所有内容:

nh () 
{
nohup "$@" > /dev/null 2>&1 &
}

那我可以走了:

nh nautilus

关于linux - 通过类似守护进程的 bash 运行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52967895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com