Linux后台运行项目-nohup

使用场景

需要后台运行某些程序, 即关闭shell窗口, 运行不间断.

命令

nohup:no hang up,中文可以译作不挂起.使用nohup可以在后台运行项目。

命令格式

 nohup cmd [arg] [&]
  • & : 让命令在后台执行
  • cmd 要执行的命令
  • arg 参数, 如日志记录

常用方式

  1. 后台执行并记录日志(覆盖)
nohup ls > run.log 2>&1 &
2>&1 是什么?
将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 run.log 文件中。总之, 日志会被输入到run.log中。
0 – stdin (standard input,标准输入)
1 – stdout (standard output,标准输出)
2 – stderr (standard error,标准错误输出)
# 记录错误的日志
ls 2 > err.log
  1. 后台执行并记录日志(追加)
nohup ls >> run.log 2>&1 &
> 表示覆盖写入
>> 表示追加写入
  1. 后台执行不记录日志
nohup ls > /dev/null 2>&1 &
/dev/null 是一个黑洞,通常用于丢弃不需要的数据输出, 或者用于输入流的空文件
  1. 后台执行并按日期记录日志
nohup ls > run_`date +%Y-%m-%d`.log 2>&1 &
### 回答1: nohup是一个Linux命令,用于在后台运行命令,即使用户退出或终端关闭,该命令也会继续运行。nohup命令通常与&符号一起使用,以便将命令放入后台运行nohup命令的语法如下: nohup command [arg...] [> output.file] [&] 其中,command是要运行的命令,arg是命令的参数,output.file是输出文件的名称,&符号表示将命令放入后台运行nohup命令通常用于长时间运行的命令,例如备份、编译、下载等。 ### 回答2: nohup是一种在Linux后台运行命令的方式,通常用于在关闭终端时仍然能够保持程序运行。在Linux中,所有的命令运行时都会使用终端窗口,如果关闭窗口或者退出终端,那么命令也会随之退出。但是,通过使用nohup命令,可以将一个命令或脚本的输出重定向到指定的文件,因此不会因为关闭终端而终止运行。 使用nohup命令非常简单,只需要在命令或脚本前加上nohup,并在后面指定输出文件即可: nohup command > output.txt & 其中,command是要执行的命令或脚本,output.txt是要输出的文件,&符号表示使命令在后台运行。此时,关闭终端也不会终止命令的运行。 另外,如果想要杀死一个后台运行的进程,可以使用kill命令。可以通过ps命令查找进程的PID号,然后使用kill命令停止进程。例如: ps -ef | grep "command" 该命令将显示所有包含"command"关键字的进程。找到要停止的进程的PID号,然后使用kill命令停止进程: kill PID 此外,nohup命令还可以将进程的stdout/stderr输出到/dev/null(空设备节点),这样将不会生成任何输出文件。 nohup command > /dev/null 2>&1 & 以上命令将标准输出和错误输出重定向到空设备节点,不会产生输出文件,同时保持命令在后台运行。 ### 回答3: nohupLinux中的一个命令,它用于在后台运行进程时,保证该进程不受终端断开的影响,从而使进程一直运行下去。其全称为“No Hang-Up”,意思是“不挂断”,通常用在需要长时间运行的命令上,比如用来进行数据分析、数据处理、文件备份等任务。nohup命令的格式为: nohup command [arg] & 其中,command表示要执行的命令,[arg]表示命令的参数,&表示将该命令放入后台执行。 nohup命令的使用方法如下: (1)使用nohup命令后,命令的输出会被重定向到一个文件nohup.out中,因此可以不必担心在退出终端后进程被关闭,还可以通过查看nohup.out文件来了解进程的运行状态。 (2)nohup命令可以与&符号结合使用,以使进程在后台运行。在使用nohup命令时,可以将待运行的命令括在一对引号之间,例如: nohup 'command arg1 arg2' & (3)如果要结束一个在后台运行nohup进程,可以使用kill命令,例如: kill -9 进程号 其中,进程号可以通过ps命令来查找。 需要注意的是,nohup命令并不能保证命令一定执行成功,它只是确保在命令执行过程中我们不必担心因为关闭终端而导致命令被中断。因此,在使用nohup命令时,需要对命令的执行结果进行监测,并在必要时采取相应措施。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值