nohup后台启动项目,日志输出教程

1.jar包启动:

 [root@localhost data]# nohup java -jar ***.jar >nohup.log 2>&1 &

启动之后,会在jar所在目录生成一个nuhup.log日志文件,记录控制台的日志输出。

2.启动命令分析

备注:主要看符号两边: ">" 对应输出什么和输出到哪里;

2.1 输出什么

输出分为标准输出和错误输出,标准输出就是全输出,输出控制台信息;错误输出只是输出错误日志信息;

  >  符号左边没有1和2,啥数字也不写只有一个右箭头,默认标准输出。
  1> 符号左边是1,标准输出。
  2> 符号左边是2,错误输出。

因此上面我们执行的 ***.jar >nohup.log 2>&1命令,可以拆解成 > nohup.log 和 2> &1两个输出,只看符号“>”左边输出部分,分别代表默认标准输出到一个地方,然后错误日志输出到另一个地方,咱们后面再讲输出到什么地方。

2.2 输出到哪

输出到哪,分为输出到指定路径日志文件和重定向位置。
1.指定路径:如下:> /data/work/log.log 这样便是指定输出到路径/data/work/log.log文件。
Linux上有一个特例路径/dev/null ,这路径就好像永久删除的回收站,当我们不需要输出任何信息时,就可以将输出指向/dev/null,那就不会有任何输出文件。
2.至于重定向,就是将文件重定向到一个地址,如下:
> &1 重定向到标准输出的地址,啥意思,就是输出到已指定的标准输出的地址。
> &2 重定向到错误输出的地址,就是输出到已指定的错误输出的地址。
比如>nohup.log 2>&1 ,意思是前面默认标准输出到了nohup.log日志下,后面错误输出也指向标准输出的地址,也即nohup.log日志下。

3.执行输出 &,最后加一个&符号收尾。

命令后面加的 & ,可让命令在后台执行,否则关闭会话会停止程序。

4.实例解释

(1)nohup java -jar ***.jar >/data/log.log 2>/data/err.log &

解释:标准日志输出到/data/log.log文件,错误日志输出到/data/err.log文件。

(2)nohup java -jar ***.jar >/data/log.log 2>&1 &

解释:标准日志输出到/data/log.log文件,错误日志重定向也输出到/data/log.log文件。

(3)nohup java -jar ***.jar >/dev/null 2>/data/err.log &

解释:标准日志输出到/dev/null,也就是不输出标准日志,错误日志输出到/data/err.log文件。

一般采用上面(3)只输出错误日志就可以了,有需要的按照(1)进行输出。

相关文章

Java输出语句三种实现方法

Java中常用的输出语句实现方法有以下三种:1.System.out.println():该方法可以将括号中的内容输出到控制台,并在结尾自动添加一个换行符。例如上述代码将输出字符串 "Hello Wo...

HTML+JavaSpringBoot输出内容的代码备存

仅仅是之前收集的代码备存,后续在展开代码思路:1、HTML构建一个form表单2、form表单里面动态填充需要输出的内容3、然后form表单submit提交4、ctrl层(后台)捕获内容并根据数据要求...

使用jxl将excel行转列输出

写在前面的话:最近工作时候领导让我们将如下样式的excel导入到库中刚开始以为是正常的excel导入,结果仔细一看!!字段是竖着的。正常的字段是横着的,结果这货给的数据是竖着的。反人类了!所以我们称这...

java如何生成动态Word文件

一、需求:你们项目中,是否有这么一个需求,用户在你的应用页面中,选择填充一堆数据,然后点击确定生成,系统会因你填充的数据而生成一份对应的Word文档。比如下图是一个word文档,打开后是这样的内容,使...

Java批量导入时,如何去除重复数据并返回结果?

概述本篇是 POI系列 的最后一篇。传送门 Java 开发中如何用 POI 优雅的导出 Excel 文件, Java 开发中如何用 POI 优雅的导入 Excel 文件.场景分析大多数开发中是不需要重...