Linux 常用命令

大部分命令推荐sudo运行

  1. 端口和PID互查

    # 根据端口查询PID
    $ lsof -i:8080
    # 根据端口查询PID
    $ fuser -i 8080/tcp
    # 根据PID查占用端口
    $ lsof -Pan -p 4978 -i
    # 根据PID查占用端口
    $ netstat -plnt | grep 4978
  2. 查看已启动的java程序

    # ps命令, 常用参数
    # ps a 显示当前终端下执行的进程
    # ps c 显示进程的真实名称
    # ps e 列出程序所使用的环境变量
    # ps f 用ASCII字符显示树状结构,表达程序间的相互关系
    # ps x 显示所有进程,无论是否运行在终端上
    # ps u 显示用户相关的进程或者与用户相关的属性
    # ps r 只显示正在运行的进程
    $ ps aux | grep java
    # openjdk不支持, 需要单独安装(注意java版本)`sudo yum install java-1.8.0-openjdk-devel`
    $ jps -l
  3. 文件相关

    :'
    查看文件夹下的文件, ls命令比较理解, 就这么写了, find命令需要逐个示例
    a: 显示隐藏文件(`.`开头的文件)
    t: 根据最后修改时间排序
    r: 倒序
    l: 列表展示
    h: 文件大小格式化(如: 1K 234M 2G)
    --time-style: 日期显示格式, 我常用iso,另外支持`full-iso,long-iso,locale`
    也可以自己写, 如: --time-style=+"%Y-%m-%d %H:%M:%S %P"
    '
    $ ls -atrlh --time-style=long-iso
    # find命令格式:
    # find path -option [ -print ] [ -exec -ok command ] {}
    # 以log结尾的文件(即文件名正则查询, `*`和`?`)
    $ find -name *.log
    # 空文件/目录
    $ find -empty
    # 3天内修改过的文件(改成`+`号表示3天前修改的文件)
    $ find -ctime -3
    # 删除3天前修改的日志文件(-exec/-ok后面跟对文件的命令, 区别是ok会再操作前询问, exec不会)
    $ find -name *.log -mtime +3 -ok rm {} \;
    # 列出大于1MB的文件
    # size 支持的单位: bcwkMG, 分别是:
    # 其中bcw不常用, 自行百度(注意b不是byte), k为KB, M为MB, G为GB
    $ find -size +1M -exec ls -l {} \;
    # 查找nginx.conf文件位置(走索引比较快, 需要安装mlocate)
    $ locate nginx.conf
  4. 查日志常用(文本文件)

    # 示例文件为log.log
    # 查看最后10行
    $ tail log.log
    # 查看文件并监听文件内容(会将文件变更内容持续输出到屏幕, Ctrl-C 结束)
    $ tail -f log.log
    # 查看最后10M文件内容
    $ tail -c 1M log.log
    # 查看文件, 并忽略前100行
    $ tail -n +100 log.log
    # 打印2-5行
    $ sed -n '2,5p' test.txt
    # 正则, 查到字符串"15:56:39.745"开始, 到第5行结束,
    $ sed -n "/15:56:39.745/,5p" log.log
    # 由于awk命令较为复杂, 不做展示
  5. grep 字符过滤, 支持正则

    # 查log.log文件中包含abcdef的行, -i表示忽略大小写
    $ grep "abcdef" log.log -i
    # 查当前目录包含"2021"的文件
    $ ls -trlh | grep 2021
  6. 临时启用/取消放行防火墙端口

     firewall-cmd --add-port 8082/tcp
    firewall-cmd --remove-port=****/tcp

最新文章

  1. eclipse 突然 一直在loading descriptor for XXX (XXX为工程名)
  2. 【总结】虚拟机VirtualBox各种使用技巧
  3. JSoup笔记
  4. Innodb的事务与日志 & JTA事务
  5. android 中对于采用okhttp时获取cookie并放入webview实现跳过登陆显示页面的功能
  6. sql server存储过程相关
  7. Linux下配置jdk1.7
  8. Scrapy的shell命令(转)
  9. CI 笔记4 (easyui 手风琴)
  10. 怎样获取浏览器上次的会话数据(session)
  11. WPF中实现类智能感知
  12. 重温《STL源码剖析》笔记 第六、七、八章 next_permutation (字典序)
  13. Qt QComboBox下拉框文字重叠解决方法
  14. mac上mysql8.0以tar.gz方式手动安装
  15. linux运维、架构之路-linux文件属性
  16. 洛谷P1600 天天爱跑步
  17. python——前端常用的标签
  18. oracle逐步学习总结之约束(基础五)
  19. Lua------------------unity关于lua的使用
  20. GIS-010-ArcGIS JS 三种查询模式(转)

热门文章

  1. makefile 入门第一课
  2. GPIO 和轮询控制 LED 的状态
  3. ABP微服务系列学习-使用Tye启动微服务
  4. 【linux系统安装】Anolis OS-龙蜥操作系统实机安装流程整理
  5. python3.9不支持win7
  6. C# 属性空引用警告
  7. 完全机器模拟浏览器操作自动刷网课!不怕被封!!-----python基于selenium实现超星学习通刷视频网课
  8. TensorFlow中使用tf.keras.callbacks.EarlyStopping防止训练过拟合
  9. Redis Stack(生产适配-仅提供 Redis Stack 服务器) (6.2.4-v2版本)
  10. vue项目去掉网页滚动条