Unix 无法在终端中隐藏正在运行的进程

Unix 无法在终端中隐藏正在运行的进程,unix,process,terminal,Unix,Process,Terminal,我昨天升级了MacPorts的应用程序,显然花了大约4个小时。 在终端的一个选项卡中看到安装过程正在进行,令人恼火 问题:在终端中隐藏正在运行的进程,使其不会占用我工作区域的空间 我今天发现在Bash 4中有一个新命令coproc: 协进程是异步执行的 在子shell中,好像命令 在执行shell和协进程之间建立 我不知道你能否用它来解决这个问题。我没有设法使用它 您如何隐藏运行过程,使其在终端中不可见,但它仍在运行? < P>您考虑过代码> CTRL+Z 使进程暂停,然后 BG在后台运行这个

我昨天升级了MacPorts的应用程序,显然花了大约4个小时。 在终端的一个选项卡中看到安装过程正在进行,令人恼火

问题:在终端中隐藏正在运行的进程,使其不会占用我工作区域的空间

我今天发现在Bash 4中有一个新命令coproc:

协进程是异步执行的 在子shell中,好像命令 在执行shell和协进程之间建立

我不知道你能否用它来解决这个问题。我没有设法使用它


<强>您如何隐藏运行过程,使其在终端中不可见,但它仍在运行?

< P>您考虑过代码> CTRL+Z 使进程暂停,然后<代码> BG<代码>在后台运行这个?

要从终端分离进程,您可以键入
disown
。您现在可以关闭终端,甚至您的会话

这里的问题是输出无论如何都会出现在bash中


您也可以在中启动程序。这个命令提供了一个启动程序的简单方法,关闭控制台并稍后检索它。

你考虑过代码> ctrl +z 使进程暂停,然后<代码> bg>代码>在后台运行这个?

要从终端分离进程,您可以键入
disown
。您现在可以关闭终端,甚至您的会话

这里的问题是输出无论如何都会出现在bash中


您也可以在中启动程序。此命令提供了一种启动程序、关闭控制台并稍后检索的简单方法。

我怀疑您正在查找nohup

nohup LongRunningNoisyProgram &

将运行该程序,将输出记录到一个文件中,这样您就看不到它,将该程序推到后台,并且如果您稍后在终端仍在运行时退出该程序,则不会取消该程序。

我怀疑您正在寻找nohup

nohup LongRunningNoisyProgram &

将运行该程序,将输出记录到一个文件中,这样您就看不到它,将该程序推到后台,并且如果您稍后在终端仍在运行时退出该程序,则不会取消该程序。

至少有一件事其他应答器没有涉及:如何管理隐藏进程

假设您有100个使用“nohup find/&”创建的后台进程。您希望退出它们,以真正了解后台进程的工作方式。请使用以下命令:

ps -ej | awk '! /grep/ && /find/ {print $2}' | xargs kill -9
然后,您可能想知道如何控制键以隐藏进程。可以将其更改为p,其中susp表示CTRL+z(^z):

stty susp p

您可以在此处看到这些键:

stty-a

请比较更改前后的标准。该命令特别有用,因为它有助于记住其他命令,例如^W(删除单词)

杰罗姆有一个关于屏幕的绝妙建议。我强烈建议遵循以下方向:


至少有一件事其他回复者没有涉及:如何管理隐藏进程

假设您有100个使用“nohup find/&”创建的后台进程。您希望退出它们,以真正了解后台进程的工作方式。请使用以下命令:

ps -ej | awk '! /grep/ && /find/ {print $2}' | xargs kill -9
然后,您可能想知道如何控制键以隐藏进程。可以将其更改为p,其中susp表示CTRL+z(^z):

stty susp p

您可以在此处看到这些键:

stty-a

请比较更改前后的标准。该命令特别有用,因为它有助于记住其他命令,例如^W(删除单词)

杰罗姆有一个关于屏幕的绝妙建议。我强烈建议遵循以下方向:


可能最好在时机成熟时将此移到ServerFault…@dmckee:噢,ServerFault,你是说据说将在6周内开放的新网站吗?@Jérôme:就是那个。这是一个很好的问题,但似乎更多的是关于“我如何运行计算机”。而不是与我相关的编程。可能最好在时机成熟时将此移到ServerFault…@dmckee:噢,ServerFault,你是指据说将在6周内打开的新网站?@Jérôme:就是那个。这是一个很好的问题,但似乎更多的是关于“我如何运行计算机”。而不是与我相关的编程。Nohup是一个很好的工具,但如果启动后发现问题,则没有帮助……如果从终端启动,Firefox会使用该命令吗?当你们使用它时,它必须在终端上有一些输出。它显然对用户隐藏了这些信息。@Masi:&在后台启动进程。disown的问题是它是特定于bash的。Mac不久前切换到BASH,所以使用disown操作就可以了(而且永远看不到输出)。在Sun上,nohup有一个命令行开关,允许您将nohup应用于正在运行的进程(或jobID)@Masi,如果你从那里启动firefox,它会向你的终端发送垃圾邮件。我是screen的超级粉丝,我的大部分日常桌面活动都是在一台电脑上进行的,但screen肯定要在你开始之前进行。我的大部分爱好都是在屏幕上编程,用它来分割我的终端,上面是vi,下面是命令行。Nohup是一个很好的工具,但是如果你在启动它后发现问题,它就没有帮助了……如果你从终端启动它,Firefox会使用这个命令吗?当你们使用它时,它必须在终端上有一些输出。它显然对用户隐藏了这些信息。@Masi:&在后台启动进程。disown的问题是它是特定于bash的。Mac不久前切换到BASH,所以使用disown操作就可以了(而且永远看不到输出)。在Sun上,nohup有一个命令行开关,允许您将nohup应用于正在运行的进程(或jobID)@Masi,如果你从那里启动firefox,它会向你的终端发送垃圾邮件。我是screen的超级粉丝,我的大部分日常桌面活动都是在一台电脑上完成的,但screen肯定要在这之前完成