在Linux上在后台运行多个命令

在Linux上在后台运行多个命令

简介

在后台执行多个命令是Linux的一个有用的功能,允许用户同时执行多个任务。当运行可能需要一段时间才能完成的长期运行的命令时,这可能特别有帮助,因为它允许用户在后台执行该命令时继续处理其他任务。

在Linux上有几种方法可以在后台运行命令,包括使用”&”操作符和 “nohup “命令。在本文中,我们将探讨这些方法并提供如何使用它们的例子。

使用”&”操作符在后台运行命令

在Linux上,在后台运行一个命令的最直接的方法之一是使用”&”操作符。这个操作符被用来在后台运行一个命令,并将终端的控制权还给用户。

要使用”&”运算符,只需将其附加到你想在后台运行的命令的末尾。例如,要在后台运行睡眠命令,你可以输入以下命令

$ sleep 45 &

该命令将执行sleep命令,使终端暂停45秒,然后将终端的控制权还给用户。该命令将继续在后台运行,直到完成。

你可以使用jobs命令来查看当前在你的系统上运行的后台工作的列表。比如说 –

$ jobs
[1]+ Running sleep 60 &

你也可以使用 “fg “命令将一个后台作业带到前台,使用 “bg “命令将一个作业发送到后台。例如,要把 “sleep “命令带到前台,你可以输入以下命令

$ fg %1

使用 “nohup “在后台运行命令

在Linux上,另一种在后台运行命令的方法是使用nohup命令。这个命令用来运行一个对挂起信号免疫的命令,这样即使终端关闭或用户注销,该命令也能继续运行。

要使用nohup命令,只需在后面输入 “nohup “和你想在后台运行的命令。例如,如果使用nohup在后台运行sleep命令,你可以输入以下命令

$ nohup sleep 60 &

该命令将执行睡眠命令,并将终端的控制权交还给用户。该命令将继续在后台运行,直到完成为止,即使终端被关闭或用户注销。

默认情况下,该命令的输出将被重定向到当前工作目录下一个名为 “nohup.out “的文件。如果需要,你可以使用”>”操作符将输出重定向到一个不同的文件。例如 –

$ nohup sleep 60 > output.txt &

该命令将执行 “sleep “命令,并将输出重定向到当前工作目录下一个名为 “output.txt “的文件。

使用 “nohup “的额外好处是,即使你没有通过终端登录到系统,也可以在后台运行一个命令。例如,如果你想在一个远程服务器上运行一个命令,然后断开与服务器的连接,这可能很有用。

结论

在Linux上在后台运行多个命令是一个有用的功能,允许用户同时执行多个任务。在Linux上有几种在后台运行命令的方法,包括使用”&”操作符和 “nohup “命令。通过使用这些方法,你可以在长期运行的命令在后台执行时继续处理其他任务。

记得使用 “jobs “命令查看当前在你的系统上运行的后台作业列表,并使用 “fg “和 “bg “命令分别将一个后台作业带到前台或将其发送到后台。

使用 “nohup “的额外好处是,即使你没有通过终端登录到系统中,也可以在后台运行一个命令,这对于在远程服务器上运行命令很有用。

总的来说,在后台运行命令是Linux中一个有价值的工具,可以帮助提高生产力和效率。所以,它对Linux用户来说是一个非常有用的功能。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Linux 基础