nohup
如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用n o h u p命令。该命令可以在你退出帐户之后继续运行相应的进程。n o h u p就是不挂起的意思( no hang up)。 在Linux/Unix下,只有守护进程在脱离终端后能继续执行,而普通进程在关闭终端时会因收到SIGHUP信号(挂起信号)而退出。因此,为了长时间运行普通进程,需要使用nohup命令。
该命令的一般形式为:
代码: |
nohup command & |
使用nohup命令提交作业
如果使用n o h u p命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,nohup.out文件缺 省写在当前目录下,如果在该目录下无写权限,则试图写到$HOME/nohup.out中,如果仍然失败,整个命令执行失败。
另外指定了输出文件:
代码: |
nohup command > myout.file 2>&1 |
在上面的例子中,输出被重定向到m y o u t . f i l e文件中。
让我们来看一个例子,验证一下在退出帐户后相应的作业是否能够继续运行。我们先提交一个名为p s 1的日志清除进程:
代码: |
$nobup ps1 & |
现在退出该s h e l l,再重新登录,然后执行下面的命令:
代码: |
$ps x |grep ps1 |
我们看到,该脚本还在运行。如果系统不支持ps x命令,使用ps -ef|grep ps1命令。
5.一次提交几个作业
如果希望一次提交几个命令,最好能够把它们写入到一个s h e l l脚本文件中,并用n o h u p命令来执行它。
例如,下面的所有命令都用管道符号连接在一起;我们可以把这些命令存入一个文件,并使该文件可执行。
代码: |
cat /home/accounts/qrt_0499 | /apps/bin/trials.awk | sort | lp $cat > quarterend cat /home/accounts/qtr_0499 | /apps/bin/trials.awk | sort | lp <ctrl-D> |
现在让它可执行:
代码: |
$ chmod 744 quarterend |
我们还将该脚本的所有输出都重定向到一个名为q t r. o u t的文件中。
代码: |
nobup ./quarterend > qtr.out 2>
nohup与&的区别: 这里是重点。让我在工作上失误
|
后台运行作业的:
有时我们必须要对大文件进行大量更改,或执行一些复杂的查找,这些工作最好能够在系统负荷较低时执行。
创建一个定时清理日志文件或完成其他特殊工作的脚本,这样只要提交一次,就可以每天晚上运行,而且无需你干预,只要看看相应的脚本日志就可以了。c r o n和其他工具可以使系统管理任务变得更轻松。
相关推荐
### nohup与&在Linux中的使用区别及最佳实践 #### 概述 在Linux环境中,用户经常会遇到需要让程序在后台持续运行的情况。对于这种需求,Linux提供了两种常见的方法:`nohup`命令和在命令末尾添加`&`符号。这两种...
4. `nohup`与`&`一起使用时,程序既不受SIGHUP影响,也不受SIGINT影响,需要通过其他信号(如SIGTERM或SIGKILL)来终止。 理解并掌握这两个命令的用法对于Linux系统的管理和自动化任务的执行至关重要。希望本文的...
当使用 `nohup` 时,程序的标准输出和标准错误会被重定向到一个名为 `nohup.out` 的文件中,除非另有指定。这有助于在程序运行时记录日志,尤其是在无人值守的情况下。 5. **停止后台运行的程序** 如果想要停止由...
nohup 命令使用方法详解 nohup 命令是一个常用于 Linux 和 CentOS 操作系统中的命令,它可以使得程序在后台运行,不受终端的影响。下面是 nohup 命令的使用方法和参数解释: nohup 命令的基本语法 nohup 命令的...
首先,理解`nohup`命令的基本用法至关重要。`nohup`命令的基本语法是`nohup [command] [args] [&]`。运行这个命令时,系统会忽略所有的挂断(HUP)信号,使得即使用户注销或关闭终端,命令也能继续执行。如果不指定...
下面将详细介绍这两个命令的使用方法和应用场景。 **nohup命令详解** `nohup`全称是"no hang up",它的主要作用是使指定的命令在用户退出终端后继续运行。通常,当我们通过终端启动一个进程,一旦终端被关闭,这个...
Linux 下 nohup 日志输出过大问题的解决方法 Linux 是一个功能强大且广泛使用的操作系统,nohup ...通过使用上述方法,我们可以解决 nohup 日志输出过大问题,维护日志文件,释放磁盘空间,并提高系统的性能和稳定性。
### nohup命令详解:确保进程...通过以上详尽的解析,我们可以看到`nohup`命令在Linux系统中扮演着重要的角色,尤其对于那些需要长期不间断运行的任务来说,它提供了一种简单而有效的方法来确保进程的连续性和稳定性。
本文将详细介绍如何在Linux环境下设置`nohup`日志的定时拆分以及清理,并提供具体的脚本和配置方法。 #### 一、Crontab简介 在Linux系统中,`crontab`是一种用于调度周期性执行任务的工具。通过编辑用户的`crontab...
使用 `nohup` 时,确保使用 `exit` 正常退出登录,以确保命令持续在后台运行。如果仅使用 `Ctrl + Z` 暂停命令并退出,后台进程可能会在账户退出时停止。 `Ctrl + Z` 可以将一个前台任务挂起,将其放到后台,并且...
下面我们将详细探讨`nohup`命令的原理、使用方法以及一些实例。 ### 命令原理 `nohup`是`no hang up`的缩写,它的核心功能是使进程忽略挂起(SIGHUP)信号。在Linux系统中,当用户注销或者断开连接时,系统会发送...
为了解决这个问题,我们需要保持通道打开,直到`nohup`命令执行完毕,可以使用`invoke_shell()`方法来实现: ```python ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ...
所以需要使用利用nohup来开启python文件: nohup python webSocketFlashServer_inner.py –fork 因为nohup是不中断的意思,也就是ssh终端关闭以后,不会自动停止。 如果出现appending output to nohup out的情况,...
本文主要探讨了两种常用的方法:`nohup`和`screen`,它们都能帮助用户在关闭终端后继续运行命令或脚本。 首先,让我们来看`nohup`命令。`nohup`是“no hang up”的缩写,它使得命令在后台运行并且忽略挂断(SIGHUP...
第四种方法,结合标准输出和错误输出重定向,如`nohup java -jar spring-boot-demo.jar > springboot.log 2>&1 &`,这将把程序的标准输出(1)和标准错误(2)都重定向到`springboot.log`文件。`2>&1`表示将标准错误...
解决这个问题的方法是在执行完`nohup`命令后,再执行一次`exit`,这将确保SSH连接完全断开,而程序仍在后台运行。 总结来说,`nohup`是Python远程运行不宕机操作的关键工具,它使得开发者可以安心离开,而不必担心...