招生电话图

Linux部署微服务之:nohup

发布日间:2021-05-10   浏览次数:117

   § nohup


   nohup是nohangup 不挂起的意思,如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。该命令运行后是前台进程


   nobupjava-jarxxx.jar

Linux部署微服务之:nohup

   § &


   &指让程序后台运行


   ava-jarxxx.jar&


   § 两者特点


   使用nohup运行程序:


    结果默认会输出到nohup.out


    使用Ctrl+C发送SIGINT信号,程序关闭


    关闭session发送SIGHUP信号,程序免疫


   使用**&**后台运行程序:


    结果会输出到终端


    使用Ctrl+C发送SIGINT信号,程序免疫


    关闭session发送SIGHUP信号,程序关闭


   § 使用两者结合让程序后台运行


   结合上面两个命令可以让程序后台运行,关闭窗口或者 ctrl+c 都不会中断进程


   nohupjava-jarxxx.jar& ,

Linux部署微服务之:nohup

   § 日志文件的处理


   类型文件描述符含义


   标准输入(standardinput)0从键盘输入


   标准输出(standardoutput)1输出到屏幕(控制台)


   错误输出(erroroutput)2输出到屏幕(控制台)


   使用nohupjava-jarxxx.jar 命令会默认生成一个 nohup.out 文件来记录日志,标准输出和错误输出都会在该文件中。


   如果我们要将日志输出到指定的其他文件时可以使用输出符号 >指定你的文件。例如将文件输出到log.txt 中可以使用命令:nohupjava-jarxxx.jar1>log.txt 字符1可以省略,这样标准输出日志会输出到 log.txt文件中,但是错误的日志怎么处理呢?我需要使用到命令的重定向绑定。修改命令为:nohupjava-jarxxx.jar>log.txt2>&1& 将错误输出重定向到标准输出1中,这样标准输出和错误输出都会在log.txt文件中。


   § 如果不需要日志该如何设置


   有的时候程序中已经指定了日志的位置,那么就不需要nohup.out文件了,这时候要丢弃这个文件。


   /dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,俗称黑洞,


   我们可以把日志输出指向这里: nohupjava-jarxxx.jar>/dev/null2>&1

Linux部署微服务之:nohup

   § 总结


   后台启动并且不需要nohup.out文件的命令:


   nohupjava-jarxxx.jar>/dev/null2>&1&

点击了解牛耳 TEL:400-0731-162
相关新闻
经验之谈丨不来牛耳读书的骚年都不是好工程师 !2017-04-23
经验之谈丨你之所以不就业,因为你选的学校不叫牛耳2017-04-23
经验之谈丨学Java是自学好还是培训好2017-04-23
趣味IT丨有趣的IT词组,快来认识吧!2017-04-23
相关新闻
参加IT培训我们能得到什么?2021-06-23
IT类专业可以从事的四个职业方向2021-06-22
IT行业真的到了走下坡路的时候了吗?2021-06-19
IT行业之后的20年会有怎样的潜力和发展?2021-06-17
牛耳教育

牛耳教育IT培训机构专注于Java培训,编程语言培训,Python人工智能培训,Web前端培训,软件测试培训,嵌入式培训等IT培训课程20余年。

400-0731-162

地址:长沙市五一广场牛耳教育站省电教中心三楼