• Java 开发中常用Linux命令总结


    作为一个Java开发人员,我们的服务基本上都是部署在Linux环境,所以常用的Linux命令必须掌握。本文不对所以的命令进行详细的解释,只给出关键的命令,如果当你看了一眼想不起它的详细用法,那就说明是时候再去学习巩固一下了。这只是我对部分知识的一个整理,方便后面学习和查阅。


    查询命令帮助手册

    man  <jinglingwang.cn>
    

    进程相关

    1. 查看Java进程

      ps -ef | grep java
      
    2. 查看端口属于哪个进程

      lsof -i :8080
      
    3. 杀掉进程

      kill -9 pid #强制
      

    JAVA JVM相关

    1. 查看yum库中的Java安装包

      yum -y list java*
      
    2. 使用yum安装Java

      # 注:“*”表示将java-1.8.0-openjdk的所有相关Java程序都安装
      yum -y install java-1.8.0-openjdk*    
      
    3. 显示进程信息

      jps
      
    4. 查看JVM参数

      jinfo pid
      
    5. 查看GC日志

      jstat -options 可用选项
      jstat -gccause 19692 1s 每秒输出GC情况  
      
    6. 线程dump

      jstack -l pid 
       jstack -l pid > /home/pid.log 
      
    7. 堆转储

      jmap -histo:live <pid>
      // or
      jmap -dump:live,format=b,file=d:/19692_dump  <pid>
      
    8. 后台运行进程

      nohup  java  -jar  a.jar  &
      
    9. 编译JAVA代码

      javac fileName.java
      
    10. 运行JAVA文件

      java fileName
      
    11. 代码反编译

      javap -c fileName
      

    网络网关

    1. 显示网络设备信息

      ifconfig
      
    2. 下载网络文件

      wget  download_url
      
    3. 访问访问地址

      curl   www.example.com
      
    4. 地址检测

      ping www.baidu.com
      
    5. 登录远程主机

      telnet  IP <port>
      
    6. SSH 远程登录

      ssh  username@IP -p  端口号
      

    权限相关

    1. 切换用户

      su -username
      
    2. 获得权限

      sudo
      
    3. 修改文件/目录权限

      chmod 777 file.txt
      
    4. 使脚本具有执行权限

      chmod  +x  ./test.sh
      
    5. 修改密码

      passwd 
      

    资源占用查看

    1. 显示磁盘空间的使用情况

      ## du的英文原义为“disk usage”
      du -h
      
    2. 磁盘空间占用信息

      # disk free 以千字节为单位显示磁盘空间信息
      df -k
      
      Filesystem     1K-blocks     Used Available Use% Mounted on
      /dev/vda1       51474044 10046024  38806656  21% /
      devtmpfs          498632        0    498632   0% /dev
      tmpfs             508256       60    508196   1% /dev/shm
      tmpfs             508256      312    507944   1% /run
      tmpfs             508256        0    508256   0% /sys/fs/cgroup
      tmpfs             101652        0    101652   0% /run/user/0
      
      kbytes 文件系统中可用空间的总大小
      used 已用空间量
      avail 可用空间量
      capacity 已用空间量,表示为总容量的百分比
      mounted on 挂载点
      
      如果用户删除了一个正在运行的应用程序所打开的某个目录下的文件:
      	du命令返回的值,显示出减去了该文件后的总大小
      	df命令返回的值,则不显示减去该文件后的大小(文件句柄还在被使用),
        直到该运行的应用程序关闭了这个打开的文件(才会真正释放空间)
      
      
    3. 查看内存使用

      free -m
      
    4. 查看程序的cpu、内存使用情况

      top   top -Hp pid
      
    5. 查看端口占用情况

      netstat -ntl
      -a或--all:显示所有连线中的Socket;
      -n或--numeric:直接使用ip地址,而不通过域名服务器
      -t或--tcp:显示TCP传输协议的连线状况
      -l或--listening:显示监控中的服务器的Socket
      

    文件

    1. 创建空白文件

      touch  a.txt
      
    2. 创建文件夹

      mkdir
      
    3. 删除文件或目录

      rm
      
    4. 复制文件

      cp source dest
      
    5. 远程复制

      scp user@host:a.txt  b.txt
      
    6. 移动文件

      mv file  dir/file
      
    7. 重命名文件

      mv  a.txt  b.txt
      
    8. 远程拷贝

      scp
      
    9. 查看文件,包含隐藏文件

      ls -al
      
    10. 输出当前工作目录

      pwd
      
    11. 查找文件

      find
      
    12. 查找并删除指定目录小于100k的文件:

      find /usr/local/test -size -100k -exec rm {} ;
      
    13. 解压 tar包

      tar –xvf file.tar
      
    14. unzip解压

      unzip test.zip
      tar -zxvf filename. tar.gz
      

    文本查看

    1. 查看整个文本

      cat  a.txt
      
    2. 分页查看文本

      more  a.txt
      
    3. 查看文本文档的前N行

      head -n 20 a.txt
      
    4. 查看文本文档的最后N行

      tail -n 20 a.txt
      
    5. 持续动态刷新显示文本内容

      tail -f a.log
      tailf  a.log
      
    6. 浏览文本

      less a.log
      
    7. 从文本按指定字段查找

      grep "key" a.log
      
    8. 统计文本出现的次数

      grep "o" pom.xml| wc -l 
      grep "o" pom.xml -c
      
    9. 使用正则表达式匹配邮箱

      # -o显示只匹配的地方
      grep -E -o '([a-zA-Z0-9_-.+]+)*@([A-Za-z0-9][-A-Za-z0-9]+.)+[A-Za-z]{2,14}' all.txt
      
    10. 求和

      grep '' 1 | awk -F '(ms)' '{print $1}' | awk -F ' ' '{print $2}' | awk '{sum+=$1}END{print sum}'
      查询语句耗时: 1ms
      查询语句耗时: 5ms
      查询语句耗时: 59ms
      

    其他

    Linux 命令学习网站

    后记

    其实在工作中需要用到的Linux 命令远不止于此,需要学习的命令还有很多很多,学习没有终点,们要做的就是多思考,多学习,多总结,加油!

    一个点赞,一个评论,既是肯定,又是鼓励!期待和你一起交流学习、共同进步!
    微信搜索公众号“jinglingwangcoding”或扫描下方二维码,一起交流
  • 相关阅读:
    OpenCV 轮廓填充drawContours函数解析
    C++ MultiByteToWideChar和WideCharToMultiByte用法详解
    删除后缀dll文件,无需下载软件
    MYSQL误删除DELETE数据找回
    神经网络减少GPU显存占用的技术
    keras tensorflow 获取某层输出和层内参数的值
    聚光灯矩阵
    tf.linalg.band_part 和 tf.matrix_band_part
    机器学习,BootStrap
    极大团算法思路小记
  • 原文地址:https://www.cnblogs.com/admol/p/5082123.html
Copyright © 2020-2023  润新知