Linux操作系统 诺胡普 命令用于运行忽略SIGHUP信号的进程。SIGHUP是一个信号,用于发送到进程并控制它,即使终端关闭。默认情况下,进程在执行终端或会话关闭时停止,但使用nohup命令可以防止这种情况。
nohup命令帮助
甚至nohup命令也只提供两个选项–help选项可以显示帮助信息。帮助选项还列出了一些与nohup相关的标准输入和标准输出信息。
nohup --help
![图片[1]-Linux Noise命令教程-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2021/01/linuxtect_image-37.png)
nohup命令语法
honup命令的语法非常简单。我们要运行的命令及其选项、参数在nohup命令之后提供。
nohup COMMAND OPTIONS
- 命令 即使终端或会话关闭,我们也要运行的命令或脚本。这是必需的。
- 选项 与命令一起使用的选项或参数。这是可选的。
nohup命令示例
让我们举一个例子,即使我们关闭终端屏幕或断开与远程会话(如SSH)的连接,所提供的命令也会运行。在下面的nohup示例中,我们将使用top命令。
nohup watch /home/ismail
执行此命令时,将打印以下输出。由于命令和脚本有一些输入和输出,当前的监视命令输出会自动重定向到“ 不呼出 “. 输出被附加到nohup.out文件中,该文件保留以前的输出。
nohup: ignoring input and appending output to 'nohup.out'
在后台运行命令或脚本
默认情况下,执行的命令或脚本在前台运行。即使我们关闭终端或SSH会话,它也会继续执行,但是我们也可以在默认情况下在后台运行该命令。bashshell和符号用于在后台运行命令或脚本,并在当前终端或SSH会话关闭时继续。在命令后添加&(与号)。
nohup watch /home/ismail &
将输出重定向到文件
默认情况下,执行的命令或脚本输出被重定向到名为“nohup.out”的文件中。输出将附加到此文件中,而不覆盖以前的内容。我们可以显式地将命令或脚本输出重定向到指定的文件中。我们只使用 >标志 将输出重定向到文件并提供文件名和路径。在下面的示例中,我们将输出重定向到一个名为 watch.output输出 位于 /家乡/伊斯梅尔 .
nohup watch /home/ismail > /home/ismail/watch.output
终止nohup进程
由于nohup命令运行提供的命令或脚本,除非系统重新启动或关闭,否则我们可能需要明确地终止或终止这个nohup命令或脚本。首先,我们将用ps命令列出当前正在运行的进程及其进程ID或PID,如下所示。
ps aux | grep watch
![图片[2]-Linux Noise命令教程-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2021/01/linuxtect_image-38.png)
我们可以看到进程ID是5385。现在我们将用下面的kill命令终止这个进程。
kill -9 5385
nohup的替代品
nohup命令提供了一种简单实用的方法,即使在关闭终端或SSH会话之后也可以运行命令和脚本。但也有一些替代方案,通常是关闭终端或断开SSH会话后不会杀死软终端。
- 屏幕
- Tmux公司
相关文章: 如何在Linux中安装Notepad++?