01

top命令

第一个命令就是top,这个命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况,有点类似Windows下的任务管理器。


最上面每一行都表示一种性能数据:

  • top:这一行是汇总信息,09:26:48是系统时间;up 169 days表示运行时间;1 user 表示当前登录用户数;load average 是负载情况,后面的三个数字分别表示1分钟、5分钟、15分钟的负载情况load average 的数据是每隔5秒钟检查一次活跃的进程数,然后计算出结果。
  • Tasks任务:total表示总进程数;running表示运行中的进程;sleeping表示休眠的进程;stopped 表示停止的进程;zombie 表示僵尸进程CPU状态:us是用户空间占用CPU的百分比;sy是内核空间占用CPU的百分比;ni是改变过优先级的进程占用CPU的百分比;id是 空闲

  • CPU百分比;wa是IO等待占用CPU的百分比;hi是硬中断占用CPU的百分比;si是软中断占用CPU的百分比。

  • Mem内存:total是内存总量;used是使用掉的内存;free是空闲的内存;buffers是缓存的内存量

  • Swap交换分区:total、used、free跟内存一样;cached是缓冲的交换区总量

下面的列表是各个进程的状态监控,具体每一项含义如下:

  • PID — 进程

  • idUSER — 进程所有者

  • PR — 进程优先级

  • NI — nice值。负值表示高优先级,正值表示低优先级

  • VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

  • RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

  • SHR — 共享内存大小,单位kb

  • S —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

  • %CPU — 上次更新到现在的CPU时间占用百分比

  • %MEM — 进程使用的物理内存百分比

  • TIME+ — 进程使用的CPU时间总计,单位1/100秒

  • COMMAND — 进程名称(命令名/命令行)

02

ps命令

第二个命令是ps,常用的命令是ps aux或ps -ef,主要作用是查看进程,经常和grep配合使用。这个命令的主要使用场景是查看进程状态或者查找进程号。使用例子如下:ps aux | grep 'nginx' 或者 ps -ef | grep 'nginx'

03

grep命令

这个命令主要用于是在指定文件或文件夹中查找字符串,最常用的场景是跟ps、cat、tail等命令一起使用。例子如下:tail -f app.log | grep 'register'

04

netstat命令

这是一个与网络相关的命令,我用这个命令最主要的是查找端口,例如:netstat -lntup | grep 80除此之外,netstat还有很多其他功能,感兴趣的可以自己搜索。

05

find命令

find命令用来在指定目录下查找文件,比如在服务器上\home\www目录查找app.c这个文件,就可以这样来查:find /home -name "*.c"

06

kill命令

kill命令是用于杀进程的命令,比如要杀掉进程号为2198的进程,则命令是:kill 2198。也可以使用kill -9 2198来彻底啥事进程。

07

tail命令

我们经常使用tail命令来监控实时日志,有时候也会配合grep一起使用:
tail -f app.log | grep login这个命令是实时地查看当前目录下app.log日志中带有login标识符的输入流。

08

cat命令

cat命令经常用于查看文件,有时候会配合grep一起使用,用法如下:
cat app.log | grep 'login' | more这个命令先打开当前目录下的app.log日志文件,然后通过grep查询带有login的日志,最后用more来分页显示。如果想实现倒序显示,可以使用tac命令,跟cat相同作用,用法如下:tac app.log | grep 'login' | more

掌握了这几个Linux命令可以让你工作效率提高一倍的更多相关文章

  1. 掌握这些常用Linux命令,一起提升工作效率

    开始上班了,新一年的奋斗的之路启程了,要继续[奔赴山海,奔赴热爱]. 汪国真在<热爱生命>这首诗中写到:既然选择了远方,便只顾风雨兼程.技术上还是持续精进和学习,远方虽远,要迈开脚步,一步 ...

  2. 【Linux命令】常用系统工作命令11个(echo、date、reboot、poweroff、wget、ps、top、pidof、kill、killall、pkill)

    目录 echo命令 date命令 reboot命令 poweroff命令 wget命令 ps命令 top命令 pidof命令 kill命令 killall命令 pkill命令 一.echo命令 ech ...

  3. 小白学linux命令

    小白是景女神全栈开发股份有限公司的一名财务实习员工,经过3个月的实习期,小白是过五关斩六将啊!终于成为了公司的一名正式员工,而且收到了景总亲自发来贺喜的邮件:“欢迎你加入大家庭,公司也本着员工全面发展 ...

  4. Linux命令【第一篇】

    1.创建一个目录/data 记忆方法:英文make directorys缩写后就是mkdir. 命令: mkdir /data 或 cd /;mkdir data #提示:使用分号可以在一行内分割两个 ...

  5. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  6. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  7. 11 个很少人知道但很有用的 Linux 命令

    Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

  8. Linux命令随笔

    Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...

  9. linux命令在线手册

    下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令

随机推荐

  1. STM32 库函数 延时函数计算

  2. 一个开源的MY BLOG

    my blog My Blog是由Docker+SpringBoot+Mybatis+thymeleaf等技术实现的Java博客系统,本来是一个docker和springboot的实战练习项目,目前已 ...

  3. https 真的安全吗,可以抓包吗,如何防止抓包吗

    Android_interview github 地址 大家好,我是程序员徐公,加上实习,有五年中大厂经验.自荐一下,可以关注我的微信公众号程序员徐公 公众号程序员徐公回复黑马,获取 Android ...

  4. 在fragment的onViewCreated里observe livedata的变化的原因

    Fragment.onViewCreated()是在Fragment.onCreateView()函数之后调用的,调用到它时 表明fragment视图层级结构已创建完毕.在onViewCreated( ...

  5. .NET5 WPF进阶教程

    一.概要 本系列将继<.net wpf快速入门教程>带领大家了解wpf,帮助各位在初级向中级过渡的中掌握基本该具备的能力.本系列视频长度大约在15分钟到30分钟左右,视频内容不仅仅会讲解技 ...

  6. 在 Android 使用 QuickJS JavaScript 引擎教程

    quickjs-android 是 QuickJS JavaScript 引擎的 Android 接口框架,整体基于面向对象设计,提供了自动GC功能,使用简单.armeabi-v7a 的大小仅 350 ...

  7. [leetcode] 72. 编辑距离(二维动态规划)

    72. 编辑距离 再次验证leetcode的评判机有问题啊!同样的代码,第一次提交超时,第二次提交就通过了! 此题用动态规划解决. 这题一开始还真难到我了,琢磨半天没有思路.于是乎去了网上喵了下题解看 ...

  8. GO学习-(23) Go语言操作MySQL + 强大的sqlx

    Go语言操作MySQL MySQL是业界常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库. Go操作MySQL 连接 Go语言中的database/sql包提供了保证SQL或类SQL数据 ...

  9. Go语言协程并发---原子操作

    package main import ( "fmt" "sync/atomic" ) /* 用原子来替换锁,其主要原因是: 原子操作由底层硬件支持,而锁则由操 ...

  10. 深入探索Glide图片加载框架:做了哪些优化?如何管理生命周期?怎么做大图加载?

    前言 Glide可以说是最常用的图片加载框架了,Glide链式调用使用方便,性能上也可以满足大多数场景的使用,Glide源码与原理也是面试中的常客. 但是Glide的源码内容比较多,想要学习它的源码往 ...