程序挂在后台

1、nohup命令

nohup 命令 > XXX.log &,会将本应在屏幕上显示的输出,重定向到同级目录的XXX.out中,即后台运行并把stdout输出到文件nohup.out中,可以使用 > 来重定向输出。

2、例子:

  • nohup python a.py > a.log &
  • nohup sh a.sh > a.log &

3、应用环境

一般都是在linux下

4、nohup是否有匹配的&

nohup command_line或者nohup command_line &

  • 他们之间的差别在于是否带&
  • &是后台运行的命令,带&的命令,即使terminal关闭,或者电脑死机程序依然运行(前提是你把程序递交到服务器上),它把标准输出(STDOUT)和标准错误(STDERR)结果输出到XXX.txt文件

5、重定向输出

使用nohup命令,这个看似很方便,但是当输出很大的时候,XXX.txt文件会非常大,或者多个后台命令的时候大家都会输出到XXX.txt文件,不利于查找结果和调试程序。所以能够重定向输出会非常方便。下面要介绍标准输出,标准输入 和标准错误了。

$./command.sh > output     这其中的>就是标准输出符号,其实是 1>output 的缩写
$./command.sh 2> output   这里的2>就是将标准错误输出到output文件里,而0< 则是标准输入了。

下面步入正题,重定向后台命令:

$nohup ./command.sh > output 2>&1 &
【a】前面的nohup 和后面的&我想大家都能明白了把。
【b】中间的2>&1是把标准错误2重定向到标准输出中1,继而,将标准输出导入文件output里,所以,标准错误和标准输出都导入文件output里面了。
【c】为什么需要将标准错误重定向到标准输出,那就归结为标准错误没有缓冲区,而stdout有。命令 >output 2>output 让文件output被两次打开,
而stdout和stderr将会竞争覆盖,这肯定不是我门想要的.当这样写nohup ./command.sh >output 2>output,这种写法是错误的


最后谈一下/dev/null文件的作用

$./command.sh >/dev/null 2>&1 &

这是一个无底洞,任何东西都可以定向到这里,但是却无法打开。所以,对于很大的stdou和stderr,当你不关心的时候,可以利用stdout和stderr定向到这里/dev/null

参考1:http://blog.sina.com.cn/s/blog_6c9eaa1501011zml.html
参考2:https://www.cnblogs.com/nellyluo/p/10769112.html

nohup 后台运行相关推荐

  1. 【java】 linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  2. linux scp 后台运行,Linux scp 设置nohup后台运行

    Linux scp 设置nohup后台运行 1.正常执行scp命令 从oradb30机器拷贝一个文件夹到oradb31机器: scp -r /u01/media/Disk1/ 192.168.1.31 ...

  3. linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  4. linux nohup 后台运行

    在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行.比如我们要运行mysql在后台: /usr/local/mysql/bin/my ...

  5. nohup后台运行以及重定向标准输出和标准异常

    nohup 加&是后台运行并把stdout输出到文件nohup.out中.其实&是后台运行的命令. 一般都是在linux下nohup格式: nohup command_line 或者 ...

  6. 【Linux】nohup后台运行 关闭ssh 后 后台程序停止

    文章目录 1.概述 1.概述 在跑时间比较长的程序,或者打印信息比较多,或者网络不稳定时,可以采用后台运行程序,然后把打印信息保存在文件中,等程序结束后再检查日志,完成该功能可以用以下命令 nohup ...

  7. 宝塔面板使用nohup后台运行任务失败,关闭终端后任务自动终止。

    项目场景: 项目场景:在宝塔终端执行命令nohup node ../wangyi/app.js > wangyi1.log 2>&1 &后,当前任务成功执行,也能通过公网访 ...

  8. nohup后台运行以及重定向标准输出和标准错误

    nohup 加 &大家都知道是后台运行并把stdout输出到文件nohup.out中.其实&是后台运行的命令. 一般都是在linux下nohup格式: nohup command_li ...

  9. nohup怎么更改名字_用nohup后台运行,用python 发提醒邮件

    最近在学校的n电脑上跑数据,很多时候一个run要耗费好几个小时,ssh不知道为什么连一会后会自动断开,跑到一半程序就悲剧了. 在网上找了一会 发现一个神器:nohup, 用法超级简单: nohup c ...

最新文章

  1. linux的shell的功能,linux shell中${ }的一些特异功能
  2. centos让yum自动选择最快的源
  3. leetcode 62. 不同路径(dp)
  4. origin画图_3分钟浏览,Origin绘图中的12个经典问题集锦,早看早知道,躲坑没烦恼!!!...
  5. Java高级开发工程师面试考纲
  6. jQuery Validate focusCleanup: true
  7. Luogu P5008 逛庭院
  8. 发的楷体怎么写_小学生硬笔书法怎么练
  9. 台达b3伺服modbus通讯_台达PLC与伺服Modbus通讯PLC编程服务程序代写程序设计专业专注...
  10. asp毕业设计——基于asp+access的工资管理系统设计与实现(毕业论文+程序源码)——工资管理系统
  11. Unity InputField唤出输入法
  12. Spark大数据分析与实战:基于Spark MLlib 实现音乐推荐
  13. win10任务管理器快捷键是什么,win10系统打开任务管理器快捷键
  14. (人工智障小白之路)keras 使用报错1
  15. 微信支付宝付款码code
  16. C语言程序设计课程设计题目[2023-02-11]
  17. JS中常用的事件操作
  18. JavaScript在函数中定义全局变量
  19. android实现接收短信,Android 使用 BroadcastReceiver 接收短信
  20. 【翻译】云原生项目和团队文化为安联直属公司的CI/CD能力提供动力

热门文章

  1. js 判断是windows系统和苹果系统
  2. Android利用zxing用相机扫描识别二维码(添加闪光灯和本地二维码)超详细教程
  3. linux局域网不同网段ip互通,linux环境中,两个不同网段的机器互通
  4. python爬取小说基本信息_python实战项目:爬取某小说网
  5. Win10如何设置定时开关机休眠唤醒
  6. IPMITOOL 命令
  7. 百度手机卫士精准定位伪基站
  8. c#窗体应用程序看Console.WriteLine打印的内容
  9. 七夕送女孩子什么礼物比较有意义?七夕送女生礼物排行榜
  10. 视频编解码之关于AI、RA、LD的解释