1. 在Linux中运行jar包: 直接用java -jar xxx.jar,当退出或关闭shell时,程序就会停止掉。
以下方法可让jar运行后一直在后台运行:
java -jar XXX.jar &
问题:
当前窗口不被锁定,输出的日志会显示在屏幕上,当关闭窗口的时候,实验之后并不会停止执行。
2. nohup 不挂断运行的命令,当终端或者账户关闭的时候,程序依旧运行。
当前的命令默认会把日志输出到nohup.out文件中
nohup java -jar XXX.jar &
指定输出文件
nohup java -jar XXX.jar >log.out &
linux下根据端口号查询对应进程:
1、命令lsof,以查找占用端口80为例,用法如下:
[root@localhost nginx]# lsof -i:80
[root@localhost nginx]#
以上为没有进程占用80端口
[root@localhost sbin]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 8246 root 6u IPv4 64233 0t0 TCP *:http (LISTEN)
nginx 8247 nobody 6u IPv4 64233 0t0 TCP *:http (LISTEN)
[root@localhost sbin]#
以上为进程ID为8246和8247的nginx应用,占用80端口
2、命令netstat,以查找占用80端口为例,用法如下:
[root@localhost sbin]# netstat -nlp|grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 8246/nginx
[root@localhost sbin]#
3、命令ps,可以查看已知进程PID的执行目录的详细信息
[root@localhost sbin]# ps -ef | grep 8246
root 8246 1 0 14:56 ? 00:00:00 nginx: master process ./nginx
nobody 8247 8246 0 14:56 ? 00:00:00 nginx: worker process
root 8461 2679 0 15:26 pts/1 00:00:00 grep 8246
[root@localhost sbin]# ps -x | grep 8246
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
8246 ? Ss 0:00 nginx: master process ./nginx
8463 pts/1 S+ 0:00 grep 8246
[root@localhost sbin]#
linux下根据端口号查询对应进程
java -jar 后台运行
Linux后台运行java -jar