从一个终端从另一个终端启动进程

从一个终端从另一个终端启动进程

我想知道是否有任何方法可以从一个终端启动新进程或程序到另一个终端。

我的意思是:假设我必须运行gedit abc.txt,但我不希望它阻止我当前的终端窗口。

有什么方法可以让我跑步编辑器从一个终端进入另一个终端窗口?或者我可以在不阻塞当前终端的情况下使用 gedit 吗?

答案1

运行gedit为:

gedit file.txt &

&最后将导致该进程在后台运行,您将能够再次以交互方式使用当前终端。

答案2

您可以使用此命令:

gedit abc.txt & disown

来源

在bash shell 中,disown 内置命令用于从作业表中删除作业,或标记作业,以便在父shell 收到SIGHUP 信号时(例如,如果用户注销),不会向它们发送SIGHUP 信号。

答案3

您可以使用在后台运行的功能。

为此,只需将 & 放在命令末尾即可。例如:

$ gedit example.txt &

 [1] 12642

要列出后台的所有进程,请使用该job命令。

 $ jobs

[1]+  Running                 gedit example.txt &

要将进程再次置于前台,请使用以下fg命令:

$ fg %1

gedit example.txt

其中 %1 代表后台的第一个进程。 %x 表示 x 进程。

相关内容