开发工程师必会的Linux命令

之前分享过一篇有关Linux的操作命令,内容很全,但是比较基础。然而,实际工作中用到的比那些稍复杂些,本篇分享一些开发工程师必须具备的

1.日志查询类

  • 按关键字不分页查询
    grep "applyId” app.log //applyId为要查询的关键字,app.log为日志名

  • 按关键字从前往后分页查询
    cat -n app.log | grep "applyId" | more
    以上命令会分页输出,使用空格键翻页,使用回车键显示更多

  • 按关键字只显示最后M行查询
    tail -n M app.log | grep “applyId” //M为行数

  • 按关键字动态显示最新M行查询
    tail -f M app.log | grep “applyId" //M为行数

  • 日志太多,将相关日志输出到文件后查看
    cat -n app.log | grep "applyId" >app-new.log //app-new.log为文件名

  • 按日期范围查询
    sed -n '/2017-10-17 10:10:10/,/2017-10-17 10:15:00/p' app.log
    注意:
    2017-10-17 10:10:10 和 2017-10-17 10:15:00必须是日志中真实打印输出过的

  • 动态输出最新M行日志
    tail -100f app.log

2.端口查询类

  • 查看端口使用情况
    netstat -tln

  • 查看指定端口使用情况
    netstat -ano | grep 2181 //查看2181端口使用情况

  • 查看占用指定端口的进程
    sudo lsof -i :2181 //查看2181端口被哪个进程占用

3.查看网络连接

  • 列出所有打开的网络连接(tcp和udp)
    lsof -i

  • 列出所有打开的tcp网络连接
    lsof -i tcp

  • 列出所有打开的udp网络连接
    lsof -i udp

  • 列出指定的tcp端口情况
    lsof -i tcp:80

  • 列出指定的udp端口情况
    lsof -i udp:55

4.查看资源使用情况

  • 查看CPU使用率、内存、虚拟内存交换情况、IO读写情况
    vmstat 5 //每5秒刷新一次

  • 查看系统中各个进程的资源占用状况
    top //使用top命令后,按Shift+M, 显示结果将按照进程内存占用率排序

  • 查看内存使用情况
    free -m //以MB为单位

  • 查看磁盘空间使用情况
    df -h

5.进程操作

  • 根据名称查询进程
    ps -ef | grep java //使用标准格式显示
    ps aux | grep java //使用BSD的格式显示

  • 杀掉进程
    kill -9 pid //pid为相应的进程号

6.文件复制

scp是一种安全方式的文件复制,基于ssh

  • 复制本地文件到远程机器
    复制本地文件app.config到远程192.168.10.190服务器/config/目录下
    scp /config/app.config root@192.168.10.190:/config/ //root是用户名

  • 复制远程文件到本地

    scp root@192.168.10.190:/config/app.config /config/ //root是用户名

全部评论
赞👍!
点赞 回复 分享
发布于 2017-10-26 08:31
点赞 回复 分享
发布于 2017-10-26 10:10
有的简洁不实用,有的实用不简洁,你这个简洁又实用,收了!
点赞 回复 分享
发布于 2017-10-26 11:06
👍🏻👍🏻
点赞 回复 分享
发布于 2017-10-27 09:02
没有awk,差评
点赞 回复 分享
发布于 2017-10-27 09:12
:
点赞 回复 分享
发布于 2017-10-29 23:09

相关推荐

不愿透露姓名的神秘牛友
10-11 14:36
点赞 评论 收藏
分享
点赞 210 评论
分享
牛客网
牛客企业服务