nohup 加 &大家都知道是后台运行并把stdout输出到文件nohup.out中。其实&是后台运行的命令。

一般都是在linux下nohup格式:
nohup command_line
或者
nohup command_line &
这之间的差别是带&的命令行,即使terminal关闭,或者电脑死机程序依然运行(前提是你把程序递交到服务器上);
它把标准输出(STDOUT)和标准错误(STDERR)结果输出到nohup.txt文件这个看似很方便,但是当输出很大的时候,nohup.txt文件会非常大,或者多个后台命令的时候大家都会输出到nohup.txt文件,不利于查找结果和调试程序。
所以能够重定向输出会非常方便。下面要介绍标准输出,标准输入 和标准错误了。
其实我门一直都在用,只是没有注意到,
比如
>./command.sh > output
#这其中的>就是标准输出符号,其实是 1>output 的缩写
>./command.sh 2> output
#这里的2>就是将标准错误输出到output文件里。
而0< 则是标准输入了。
下面步入正题,重定向后台命令
>nohup ./command.sh > output 2>&1 &
解释:前面的nohup 和后面的&我想大家都能明白了把。
主要是中间的 2>&1的意思
这个意思是把标准错误(2)重定向到标准输出中(1),而标准输出又导入文件output里面,
所以结果是标准错误和标准输出都导入文件output里面了。
至于为什么需要将标准错误重定向到标准输出的原因,那就归结为标准错误没有缓冲区,而stdout有。
这就会导致 >output 2>output 文件output被两次打开,而stdout和stderr将会竞争覆盖,这肯定不是我门想要的.
这就是为什么有人会写成:
nohup ./command.sh >output 2>output出错的原因了
##########################
最后谈一下/dev/null文件的作用
这是一个无底洞,任何东西都可以定向到这里,但是却无法打开。
所以一般很大的stdou和stderr当你不关心的时候可以利用stdout和stderr定向到这里>./command.sh >/dev/null 2>&1
转载自:http://blog.sina.com.cn/s/blog_6c9eaa1501011zml.html

nohup后台运行以及重定向标准输出和标准错误相关推荐

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

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

  2. 【Linux系统理论操作学习26】LInux的后台运行,重定向输出,前后台进程转换和管理

    1 输出的后台运行 1.1 简单后台运行 nohup表示程序不被挂起 &表示后台运行程序 如果说使用&,就会出现问题:后台执行的进程,其父进程还是当前终端shell的进程,而一旦父进程 ...

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

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

  4. 【Linux】21.Linux输入输出重定向、2>1、标准输入、标准输出、标准错误

    输入输出重定向.2>&1.标准输入.标准输出.标准错误 https://zhuanlan.zhihu.com/p/47765176 ./test.sh > log.txt 2> ...

  5. linux 的错误输出黑洞,Linux的标准输出、标准错误输出、nohup

    1.在bash中标准输出可以用1来表示:通常来说这个1可以省略: 如./xxx >/dev/null 和 ./xxx 1>/dev/null 是一个意思 2.在bash中标准错误输出可以用 ...

  6. dup、dup2实现文件描述符重定向(标准输入、标准输出、标准错误输出)

    目录 dup函数 dup2函数 重定向标准输入 重定向标准输出 重定向标准错误输出 重定向恢复 总结 在前文中,可以知道,文件描述符实际上是指向文件表项的指针数组索引,也就相当于每个文件描述符都对应一 ...

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

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

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

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

  9. 标准输出和标准错误重定向

    程序:指令+数据 读入数据:Input 输出数据:Output 在linux中一条指令或者程序,可以分为三种形式: 标准输入:-0 默认接受来自键盘的输入 标准输出:-1 默认输出到终端窗口 标准错误 ...

最新文章

  1. SOA之(2)——SOA架构基础概念与设计框架
  2. 當前主流防拷光碟的備份
  3. App推广中如何寻找200个以上渠道
  4. 最新详细的JMM内存模型(三天熬夜血肝)
  5. 前端程序员最爱用的8款代码编辑器,你用哪款?
  6. .Net 内存对象分析
  7. 2019下半年系统集成项目管理工程师下午真题
  8. c语言不能调用strcat连接两个字符串_C语言中常用的6个字符串处理函数
  9. itunes如何备份手机所有数据
  10. [noip2014]解方程 hash+秦九昭
  11. iOS进阶面试题----多线程
  12. Lucene倒排索引简述 之倒排表
  13. 基于littlevgl设计的手表模拟时钟表盘(附代码)
  14. 1分钟学会系统安装方法,win7 XP win10 win11都变得非常简单
  15. 【分布式】psutil cpu_percent如何使用;python如何测试cpu的使用率
  16. LTE上行物理层传输机制(1)-PUSCH上行跳频之Type1频率跳频
  17. 华为发布《智能世界2030》报告;金唯智母公司Brooks Automation将以30亿美金出售半导体业务 | 全球TMT...
  18. [go基础] go基础之字符串中查找汉字数量
  19. 新机框ATCA配置过程(视图部分)
  20. 原生JS实现Promise(详解)

热门文章

  1. Adobe Flash player折腾好久,ubuntu chromium 浏览器终于可以看视频
  2. 索尼音乐应用android,Sony Music Center
  3. 编写Python程序输入直角三角形的两个直角边的边长a,b,请你求出其斜边边长,结果保留小数点后三位小数。如a=3,b =4,则输出5.000...
  4. Git——修改远程分支名称
  5. 区块链-02-BTC-密码学原理
  6. NOKIA N8 拆机视频
  7. 自定义二维码以及扫描二维码
  8. 计算机室功能室资料,功能室简介 (微机室).doc
  9. vue2.0中watch用法
  10. r5 7600x和i5 12600k哪个好 r57600x和i512600k区别