nohup和&的使用/2>&1是什么意思/怎么关闭nohup挂起的程序

1.&和nohup和2>&1的定义:

& 放在命令到结尾,表示后台运行,防止终端一直被某个进程占用,这样终端可以执行别到任务

nohup放在命令的开头,表示不挂起(no hang up),也即,关闭终端或者退出某个账号,进程也继续保持运行状态

0 表示stdin标准输入
1 表示stdout标准输出
2 表示stderr标准错误
2>&1 也就表示将错误重定向到标准输出上

2.&测试

现编写一个简单的pyhton程序,每隔3秒输出一个’done’
在这里插入图片描述
然后编写一个简单的shell脚本:
在这里插入图片描述
在每个执行语句后面加个&表示后台运行
wait表示上述程序执行完毕才继续执行后面的程序

可以看到终端的输出:每隔三秒钟,连续输出两个’done’
在这里插入图片描述

3.nohup和2>&1 &连用测试

现在我们来测试一下,故意写一个错误的python程序
在这里插入图片描述

使用nohup sh test.sh >myout.log 2>&1 &
在这里插入图片描述

查看myout.log文件
在这里插入图片描述

发现确实输入了错误信息

怎么关闭nohup挂起的程序

通过ps命令查看进程号PID,然后执行 kill %PID

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值