Linux任务管理--nohup、&

一、&

应用场景
把占用终端的任务丢到后台运行,前台可以继续操作其他任务
将命令丢到后台运行,避免终端占用,避免Ctrl+c中断任务。
1、执行&,会返回一个job number和PID,如[2]- 37314,

  • [2]代表此时后台执行第几个任务,37314是进程PID;
  • 其中的+ - 符号,+代表最近被放到后台中的,-代表最新第二个被放到后台中的,第三个以后就不会有+ -;
  • 任务完成后会返回[2]- Done;

2、数据流,当有stdout和stderr时会输出影响前台屏幕,这时就要用到数据流重定向:python3 autodeploy.py >/tmp/log.txt 2>&1 &

拆分成四部分:(执行的命令)+ (>/tmp/log.txt)+ (2>&1)+ (&)

  • 2>&1,2是标准错误stderr,1是标准输出stdout,(0是标准输入),将标准错误重定向到标准输出,>&是固定搭配;
  • >/tmp/log.txt,实际上是 1>/tmp/log.txt的简写,将标准输出传到/tmp/log.txt,
    >表示覆盖,>>表示追加
  • &后台运行

3、&是将命令丢到后台运行,如果想将命令丢到后台暂停呢?就需要用到Ctrl-z
应用场景:当正在vim编辑一个文件,但是又想要查询一个东西,正常是先退出vim再查询,如果用Ctrl-z就方便多了,只要将vim暂时丢到后台等待即可;
在这里插入图片描述

jobs命令,查看当前终端后台的任务,jobs -lrs -l显示PID,-r正在运行的,-s暂停的;
在这里插入图片描述

fg命令,将后台任务拿到前台运行,fg %1,就是将job number为1的任务拿到前台执行;
bg命令,将后台任务在后台运行,bg %1

二、nohup

应用场景:
&是将任务放到后台执行,但是如果脱机或者注销系统后任务不会继续执行,如果想实现继续执行就要用到nohup,因此nohup常和&搭配使用:
nohup 命令及参数 &
在这里插入图片描述

三、总结

&,后台运行
nohup,脱机或者注销后仍然执行

二者搭配使用,
如果只用&,脱机或者注销后任务停止;
如果只用nohup,占用终端,Ctrl-c后任务停止

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Linux中,`nohup`是一个命令行工具,用于让一个进程在用户登出后继续运行。它可以帮助你创建后台任务,即使当前的控制终端关闭或断开连接,该进程仍会继续执行。下面是安装和使用`nohup`的基本步骤: **安装 nohup**(如果你使用的是基于包管理器的发行版,如Ubuntu、Debian、CentOS等): 1. 对于大多数发行版,`nohup`通常已经预装,你可以直接使用它。如果不确定是否已安装,可以在终端输入 `which nohup` 来查找它的位置。 2. 如果需要更新或首次安装,可以通过包管理器来操作。例如,在Ubuntu或Debian上,可以输入 `sudo apt update && sudo apt install nohup`。 **使用 nohup 安装程序**: 1. 打开终端,导航到包含可执行文件的目录。 2. 使用 `nohup` 命令前加上你要运行的程序名和参数,例如: ``` nohup your_program_name & disown ``` `-&` 将进程置于后台,`disown` 则使终端不再跟踪此进程。 **创建 nohup 日志文件**(可选): 为了记录程序的输出以及可能的错误信息,可以指定一个日志文件,比如: ``` nohup your_program_name > output.log 2>&1 & disown ``` 这将把输出重定向到名为 `output.log` 的文件,并保留标准输出和标准错误的一致性。 **相关问题--:** 1. 如何查看正在运行的 nohup 进程? 2. 如何停止一个正在用 nohup 运行的进程? 3. nohup 是否能处理所有类型的进程?有哪些限制?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值