Linux 查看 Java 项目的进程和服务名
AI越来越火了,我们想要不被淘汰就得主动拥抱。推荐一个人工智能学习网站,通俗易懂,风趣幽默,最重要的屌图甚多,忍不住分享一下给大家。点击跳转到网站
1. 查看 Java 进程:
ps -ef | grep java
或者
jps -lv
jps 是 JDK 自带工具,显示所有 Java 进程的类名、JAR 名等信息。
2. 结合 grep 精确查看:
ps -ef | grep java | grep 项目名或端口号
3. 查看 Java 服务名或主类名:
jcmd <pid> VM.command_line
或者(适用于 Spring Boot 项目):
ps -eo pid,cmd | grep java | grep 项目名
4. 如果是使用 systemd 启动的服务:
systemctl list-units --type=service | grep java
或查看某个服务状态:
systemctl status your-service-name
5. 衍生一下 查看由 systemctl 管理的 Java 项目或任意服务
一、列出所有正在运行的 systemd 服务 如何将一个项目交给systemctl 管理,可参照如何将jar交由systemctl管理
systemctl list-units --type=service
列出所有服务(包括没有运行的):
systemctl list-unit-files --type=service
二、查找与你的 Java 项目相关的服务(比如包含 java 或项目名)
systemctl list-units --type=service | grep java
或者更精确:
systemctl list-units --type=service | grep snowy
三、查看具体服务的状态(比如:snowy.service)
systemctl status snowy.service
四、其他常用命令
启动服务
systemctl start snowy.service
停止服务
systemctl stop snowy.service
重启服务
systemctl restart snowy.service
开机启动
systemctl enable snowy.service
禁止开机启动
systemctl disable snowy.service
查看是否启用
systemctl is-enabled snowy.service
五、服务文件通常放在这些位置:
用户自己配置的服务,优先找这里
/etc/systemd/system/
系统级服务
/usr/lib/systemd/system/
找 Java 相关的 service 文件:
grep -ril 'java' /etc/systemd/system