linux最常用命令操作及linux下后台运行Java(jar)应用说明
1、常用命令操作
1.0 查看当前系统版本、系统内核、发行版本、CPU信息
查看当前系统版本
cat /proc/version
查看当前系统内核
uname -a
查看发行版本
cat /etc/redhat-release
cat /etc/centos-release
或者
cat /etc/issue
查看CPU信息
cat /proc/cpuinfo
1.1 显示当前所处完整目录、创建目录、删除目录、删除文件、文件重命名
显示当前完整目录
pwd
创建目录
mkdir 目录名称
删除目录
rm -r 目录名称
删除文件
rm -f 文件名称
文件重命名
mv 源文件名 新文件名
1.2 实时查看当前进程及资源占用(内存、CPU)列表
top
1.3 查看内存使用情况
free
或者
free -m
1.4 查看某个命令所在的位置
which
或者
whereis
然后使用realpath查看实际位置
realpath
例如:
which java
whereis java
realpath /usr/bin/java
1.5 查看文件是否存在软链接
ll -a 文件路径 或者 file 文件路径
例如:
ll -a /usr/bin/java
file /usr/bin/java
1.6 条件检索进程信息
ps -ef|grep jinyu
注:grep后面跟检索的关键词
1.7 查看进程所在位置详情
ll /proc/$pid$
注: p i d pid pid代表进程号
1.8 结束进程
kill -9 PID 操作系统从内核级别强制杀死一个进程。
kill -15 PID 操作系统发送一个通告告诉应用主动关闭。
1.9 查看运行的服务列表
chkconfig –list
注:on代表开启自启动,off代表开启不自启动
1.10 查看服务器端口占用情况
netstat -a -n -p
常见参数
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
1.11 CentOS防火墙操作
查看防火墙状态:
firewall-cmd --state
关闭防火墙
systemctl stop firewalld.service
启用防火墙
systemctl stop firewalld.service
禁止防火墙开机启动
systemctl disable firewalld.service
启用防火墙开机启动
systemctl enable firewalld.service
1.12 根据端口号获取对应的进程ID
1、第1种方式可以通过netstat -antp | grep 端口号的查看,如下:
netstat -antp | grep 5000
25768就是进程ID
2、第2种方式可以通过lsof -i:端口号的方式查看,如下:
lsof -i:5000
2、在linux系统中以后台方式启动java(jar)应用
通常在linux系统中通过java -jar运行一个java(jar)应用后,当关闭终端或退出用户时,这个应用就会自动停止运行,下面就介绍一下如何以后台方式运行java(jar)应用,即时关闭终端或退出用户时程序也不被中断的方法。
nohup java -jar project.jar &
nohup java -jar -Xms512M -Xmx2048M project.jar &
nohup java -jar -Xms512M -Xmx2048M -XX:PermSize=512M -XX:MaxPermSize=1024M project.jar &
说明:
- nohup: 如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。
- Xms:堆内存初始大小
- Xmx:堆内存最大值
- PermSize:永久内存初始大小
- MaxPermSize:永久内存最大值
- &:后台执行
堆内存和永久内存区别以及其他参数设置,参考jvm运行机制