Linux下jar包的运行、查看、终止方式

 更新时间:2025年11月18日 09:53:46   作者:斯文~  
介绍了四种运行jar包的方法,包括前台运行、后台不锁窗口运行、后台挂起运行以及指定日志输出,还介绍了查看运行中的jar包和终止jar包的方法

1. jar包的运行

  1. java -jar xxx.jar:当前ssh窗口被锁定,不可进行其它操作,ctrl + c或直接关闭窗口停止程序;
  2. java -jar xxxxx.jar &: 当前ssh窗口不被锁定,可进行其它操作,当窗口关闭时,程序退出;
  3. nohup java -jar xxx.jar &:后台挂起程序,当账户退出或终端关闭时程序停止,日志文件存储在当前目录的nohup.out文件中;
  4. nohup java -jar xxxxxx.jar > log.txt &:指定输出日志到log.txt文件,后台挂起程序,当账户退出或终端关闭时,程序仍然运行;

nohup 表示生成日志文件nohup.out& 表示后台新启一个线程执行该命令。

nohup java -jar xxx.jar >xx.log 2>&1 &
该命令多了2>&1,它的意思是,将标准错误2重定向到标准输出1,标准输出1再被重定向输入到xx.log中;

0 – stdin (standard input,标准输入)
1 – stdout (standard output,标准输出)
2 – stderr (standard error,标准错误输出)

2. 查看运行中的jar包

# 以下几种命令均可
ps -ef | grep java 查看当前运行的java进程
ps -ef | grep xxx.jar 查看当前运行的jar进程

ps aux | grep xxx.jar
# ps:process status的简称,用于显示当前进程的状态;
# a:all简称,显示所有程序;
# u:user简称,以用户为主的格式来显示;
# x:显示所有程序,不区分终端机;

# 查看某端口对应的线程pid
netstat -nlp |grep :9181

# 根据进程号查看端口号
netstat -anop | grep 15161

3. jar的终止

kill -9 jar包pid
# 9:使用第9种信号(SIGKILL)无条件终止该进程

4. jar启停脚本

# start.sh
nohup java -jar 包名.jar >log.txt &       
echo $! > /var/run/包名.pid
# 将jar包启动对应的pid写入文件中,为停止时提供pid
# shutdown.sh
PID=$(cat /var/run/包名.pid)
kill -9 $PID
# 给脚本添加可执行权限
sudo chmod +x ./test.sh

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux上定位后台服务偶发崩溃的解决方法

    Linux上定位后台服务偶发崩溃的解决方法

    在本篇内容中小编给大家整理的是一篇关于Linux上定位后台服务偶发崩溃的解决方法,有需要的朋友们可以学习参考下。
    2020-11-11
  • 建议收藏:好用的 Unix/Linux 命令技巧

    建议收藏:好用的 Unix/Linux 命令技巧

    这篇文章主要介绍了几个好用的 Unix/Linux 命令技巧,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • Linux 文件系统的操作实现

    Linux 文件系统的操作实现

    这篇文章主要介绍了Linux 文件系统的操作实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Linux 为特定的用户或用户组启用或禁用 SSH的方法

    Linux 为特定的用户或用户组启用或禁用 SSH的方法

    这篇文章主要介绍了如何在 Linux 上为特定的用户或用户组启用或禁用 SSH,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • Linux修改用户所属组的方法

    Linux修改用户所属组的方法

    在本篇文章里小编给大家整理的是关于Linux修改用户所属组的方法,有需要的朋友们参考下。
    2020-02-02
  • Linux redis-Sentinel配置详解

    Linux redis-Sentinel配置详解

    这篇文章主要介绍了Linux redis-Sentinel配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • vmware10.0破解版安装centos的详细步骤

    vmware10.0破解版安装centos的详细步骤

    这篇文章主要为大家详细介绍了vmware10.0破解版安装centos的详细步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • Linux共享内存原理及分析

    Linux共享内存原理及分析

    文章介绍了共享内存作为进程通信方式,通过物理内存映射实现进程间共享资源,其核心步骤为申请内存、挂接虚拟地址、去关联释放,需用户指定key值确保唯一性,操作系统管理其生命周期,共享内存速度快但需自行维护同步机制
    2025-10-10
  • Linux中用rename命令批量替换文件名方法实例

    Linux中用rename命令批量替换文件名方法实例

    这篇文章主要介绍了Linux中用rename命令批量替换文件名的方法,文中详细介绍了在Debian或者Ubuntu下批量替换文件名的语法和实例代码,对大家具有一定的参考价值,需要的朋友可以们下面来一起看看吧。
    2017-04-04
  • Windows下安装Apache 2.2.21图文教程

    Windows下安装Apache 2.2.21图文教程

    这篇文章主要介绍了Windows下安装Apache 2.2.21图文教程,文中还列举了一些安装中可能遇到的常见问题,需要的朋友可以参考下
    2014-07-07

最新评论