通过Ubuntu下后台运行jar指令,部署springboot项目,同时解决nohup: ignoring input and redirecting stderr to stdout问题

springboot在Linux服务器一般是采用Jar包的形式部署

1、正常在Ubuntu系统下启动jar包的方式:

$ java -jar test.jar

2、但是这样部署,如果通过ssh连接的客户端断开,那么项目也会关闭。而我们希望的是让项目能够一直在后台运行。

那么就需要下面的命令来启动jar包:

$ nohup java -jar test.jar &

nohup指令就是让程序不挂断的在后台持续运行,输出信息默认会输出到nohup.out 文件中

3、如果我们希望把本地开发时输出到console控制台的信息输入到一个txt文本,那么就需要下面的指令:

$ nohup java -jar test.jar >log.txt &

有时输入这个指令会出现以下问题

nohup: ignoring input and redirecting stderr to stdout

这是因为没有写入权限导致的。

这时可以通过Linux的重定向解决这个问题:

$ nohup java -jar test.jar > log.txt 2>&1 &

0、1和2分别表示标准输入、标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出。

4、当项目部署之后,可以通过jobs命令查看后台的程序

$ jobs

同时如果想让某个程序调回前台控制,可以使用fg命令

$ fg + 序号
// 每个后台运行的程序都有一个序号
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值