Java开发用到的linux命令收集

1、改变所属群组, chgrp

chgrp  [-R]  群组名称  文件或文件夹

2、改变档案拥有者, chown

chown  [-R]  账号名称  文件或文件夹

3、改变权限, chmod

chmod  [-R]  xyz  文件或文件夹


       -R : 进行递归(recursive)的持续变更,
               亦即连同次目录下的所有档案都会变更.

        xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加.
        r:4   w:2   x:1

4. umask 指定:目前用户在新建文件或目录时的权限默认值

两种查看方式:

umask

0022   <==与一般权限有关的是最后三个数字。

umask -S

u=rwx, g=rx, o=rx

注意:umask的分数指的是 “该默认值需要减掉的权限”。因为r w x分别是4,2,1,也就是说,当要去掉写的权限,就是输入2,而如果要去掉读的权限,就是4,那么去掉读和写的权限,也就是6,而要去掉执行和写的权限,也就是3,umark的默认值为022。对于文件是没有执行的权限的。

设置umask:

umask 002

5、chattr 设置文件的隐藏属性

chattr  [+-=] [ASacdistu]  文件名或目录名称 

6、lsattr 显示文件的隐藏属性

lsattr  [-adR]  文件或目录

7、df:列出文件系统的整体磁盘使用量

df

8、du:评估文件系统的磁盘使用量(常用于评估目录所占容量)

du

9、查看端口占用情况

netstat  -tunlp|grep 8080
lsof -i:8080

10、linux启动java的jar包

10.1 日志会输出到指定文件内

nohup java -jar xx.jar --spring.profiles.active=lc  > log.file  2>&1 &

 10.2 预防nohup.out文件过大,日志输出到黑洞(/dev/null)中

nohup java -jar xx.jar --spring.profiles.active=lc >/dev/null 2>&1 &

11、linux开放端口

        11.1 开启防火墙 

systemctl start firewalld

       11.2 开放指定端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent

      命令含义:

  • --zone #作用域
  • --add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
  • --permanent  #永久生效,没有此参数重启后失效

       11.3 重启防火墙

 firewall-cmd --reload

12、jps

  12.1 查看jvm进程号的查看启动参数

jps -lvm | grep 进程号

 12.2 查看jvm所有的进程

jps -l

13、查找包含关键词的历史命令

history | grep 关键词

14、jmap命令

jmap -heap pid                     
#展示pid的堆使用信息,包含新生代/老年代等

jmap -histo pid                    
#展示class的内存情况

jmap -histo:live pid>a.log         
#可以观察heap中所有对象的情况(heap中所有生存的对象的情况)。
#包括对象数量和所占空间大小。 
#可以将其保存到文本中去,在一段时间后,使用文本对比工具,可以对比出GC回收了哪些对象。

jmap -dump:live,format=b,file=a.log pid
#dump 将内存使用的详细情况输出到文件(内存信息dump到a.log文件中)

 14.1 jmap -dump  堆转储快照文件

堆转储快照文件到wingate.bin文件内,进程号为28334

jmap -dump:format=b,file=wingate.bin 28334

 输出内容:

 

15、模糊查询包含关键词的运行pid

ps -ef|grep 关键词

16、查看JDK使用的垃圾回收器类型

java -XX:+PrintCommandLineFlags -version

JDK8 输出内容

-XX:InitialHeapSize=32749056 -XX:MaxHeapSize=523984896 
-XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers 
-XX:+UseCompressedOops -XX:+UseParallelGC 
java version "1.8.0_361"
Java(TM) SE Runtime Environment (build 1.8.0_361-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode)

17、查看JDK的GC详细情况

java -XX:+PrintGCDetails -version

JDK8输出内容:

java version "1.8.0_361"
Java(TM) SE Runtime Environment (build 1.8.0_361-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode)
Heap
 PSYoungGen      total 9728K, used 522K [0x00000000f5980000, 0x00000000f6400000, 0x0000000100000000)
  eden space 8704K, 6% used [0x00000000f5980000,0x00000000f5a02ac0,0x00000000f6200000)
  from space 1024K, 0% used [0x00000000f6300000,0x00000000f6300000,0x00000000f6400000)
  to   space 1024K, 0% used [0x00000000f6200000,0x00000000f6200000,0x00000000f6300000)
 ParOldGen       total 22016K, used 0K [0x00000000e0c00000, 0x00000000e2180000, 0x00000000f5980000)
  object space 22016K, 0% used [0x00000000e0c00000,0x00000000e0c00000,0x00000000e2180000)
 Metaspace       used 2227K, capacity 4480K, committed 4480K, reserved 1056768K
  class space    used 241K, capacity 384K, committed 384K, reserved 1048576K

18 jstat

18.1 查看进程号的垃圾回收详情

(查询进程号为28334,250毫秒查询一次,总共查询20次GC情况)

jstat -gc 28334 250 20

输出内容:

S0C:第一个幸存区的大小
S1C:第二个幸存区的大小
S0U:第一个幸存区的使用大小
S1U:第二个幸存区的使用大小
EC:伊甸园区的大小
EU:伊甸园区的使用大小
OC:老年代大小
OU:老年代使用大小
MC:方法区大小
MU:方法区使用大小
CCSC:压缩类空间大小
CCSU:压缩类空间使用大小
YGC:年轻代垃圾回收次数
YGCT:年轻代垃圾回收消耗时间
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间

 18.2 查询进程号当前的堆以及GC情况

jstat -gcutil 28334

输出内容:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

象话

打赏犹如太阳穴的枪口

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值