我有一个不断回应信息的任务。
例如,如果你做一个git克隆,并且你想把这个任务发送到后台(通过使用&符号)
git clone https://github.com/mrdoob/three.js.git &
那么git克隆操作会不断刷新git克隆进程的新百分比,即:
Receiving objects: 47% (22332/47018), 92.53 MiB | 480 KiB/s 1410/47018), 7.18 MiB | 185 KiB/s Receiving objects: 53% (24937/47018), 99.40 MiB | 425 KiB/s 1410/47018), 7.18 MiB | 185 KiB/s
所以我不能继续在前台进行其他操作,因为这些更新阻止了我看到我正在写的东西。
你能告诉我如何有效地发送一个像这样的一个冗长的任务到背景?
非常感谢!
你可以让这个进程把它的输出写入一个文件(如果你以后需要查看的话),像这样:
git clone https://github.com/mrdoob/three.js.git >output.txt &
或者像这样完全丢弃输出:
git clone https://github.com/mrdoob/three.js.git >/dev/null &
编辑:
您也可以在上述任一选项中包含发送到stderror的任何错误消息,方法是将&
替换为2>&1 &
其他答案是好的,但你也可以使用:
git clone -q ...
详情请看这里 。
重定向其标准输出:
git clone https://github.com/mrdoob/three.js.git > /dev/null &
或者使用命令的适当的详细选项(在这种情况下为git)
如果你特别想把它放在后台,你可以在命令末尾添加&符号,或者在运行时使用ctrl+z
然后命令'bg'
在后台运行。 要将其复原,请使用jobs
列出您的作业,然后使用fg %{job #}
将其复原。 希望这有助于和工作在这种独特的情况