掌握了这几个 Linux 命令可以让你工作效率提升三倍

helloworld_51691982
• 阅读 259

很多程序员熟悉了在 Windows 环境下开发,而我们服务器一般都是 Linux 系统。当有一天你需要在 Linux 服务器上做一些配置或者故障排除的时候,你会很困惑,不知道如何下手。原因是对 Linux 常用的命令还不熟悉,今天我就给大家介绍几个 Linux 常用命令。掌握它们的用法后,我们在使用 CRMEB 打通版系统的时候就能如鱼得水,可以大大提高工作效率。

1、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 — 进程 id

USER — 进程所有者

PR — 进程优先级

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

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

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

SHR — 共享内存大小,单位

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

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

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

TIME+ — 进程使用的 CPU 时间总计,单位 1/100 秒 COMMAND — 进程名称(命令名 / 命令行)

2、ps 命令 第二个命令是 ps,常用的命令是 ps aux 或 ps -ef,主要作用是查看进程,经常和 grep 一起使用。此命令的主要用例是查看进程状态或查找进程号。使用示例如下:

ps aux | grep 'nginx' 或者 ps -ef | grep 'nginx' 3、grep 命令 此命令用于查找指定文件或文件夹中的字符串,通常与 ps、cat、tail 等命令一起使用。例子如下:

tail -f app.log | grep 'register'

4、netstat 命令 这是一个与网络相关的命令,我用这个命令最重要的是找到端口,例如:

netstat -lntup | grep 80 除此之外,netstat 还有许多其他特性,如果您感兴趣,可以自己搜索。

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

6、kill 命令 kill 命令是用来杀死进程的,例如杀死编号为 2198 的进程,则命令是:kill 2198。也可以使用 kill -9 2198 来彻底杀死这个进程。

7、tail 命令 我们经常使用 tail 命令来监视实时日志,有时与 grep 结合使用:

tail -f app.log | grep login 该命令实时查看当前目录中 app.log 日志中带有 login 标识符的输入流。

8、cat 命令 cat 命令经常用于查看文件,有时与 grep 一起使用,如下所示:

cat app.log | grep 'login' | more 这个命令先打开当前目录中的 app.log 日志文件,然后通过 grep 查询带有 login 的日志,最后使用 more 对其进行分页显示。

如果要以相反的顺序显示,可以使用 tac 命令,它具有与 cat 相同的效果,如下所示:

tac app.log | grep 'login' | more

有问题欢迎联系我。

点赞
收藏
评论区
推荐文章
我是阿沐 我是阿沐
2年前
怎么办,linux的常用命令就是记不住?
前言Linux可以说是前后端开发者必备的技能,那么阿沐本身大学主修Linux操作系统嵌入式,虽然毕业之后并没与从事与操作系统方面开发;但是还是身在互联网,保持前后端开发工作,涉及到服务器部署、日志分析统计、vim编辑等等。linux的基础命令可以说我们必须掌握的,不然有的面试我们都过不了。所以万字总结linux实用的基本命令,小伙伴们收藏起来,每天必看必敲
编程修养 编程修养
3年前
Linux 三剑客之 grep 使用详解
Linux最重要的三个命令在业界被称为三剑客,它们是:awk、sed、grep。sed已经在上篇(https://mp.weixin.qq.com/s/XvTrfKfYZHnGZQ1O1K9lg)中讲过,本文要讲的是grep命令。我们在使用Linux系统中,grep命令的使用尤为频繁,熟练掌握grep的常见用法,能够极大地提高你的
Stella981 Stella981
2年前
Linux 安装Redis 详细教程
在windows下使用redis只要下载解压后启动就可以了,但是在linux下和windows下还是有些区别的,下面我们详细看看linux下redis的安装、配置、使用过程。一、环境说明1.Linux操作系统  本文使用deepin15.7发行版,下载地址:https://www.deepin.org/2.redis安装包 
可莉 可莉
2年前
20_分钟构建你自己的_Linux_发行版
_摘要:_ 你想要构建自己的Linux发行版吗?不喜欢市面上现有的Linux发行版?你认为自己可以构建一款更好的发行版?你很幸运。我要在20分钟里面介绍如何构建一款发行版。是的,你没有听错,就是20分钟。你想要构建自己的Linux发行版吗?不喜欢市面上现有的Linux发行版?你认为自己可以构建一款更好的发行版?你很幸运。我要在20分
Wesley13 Wesley13
2年前
Java运行环境
Java开发环境配置在本章节中我们将为大家介绍如何搭建Java开发环境。Windows上安装开发环境Linux上安装开发环境安装Eclipse运行JavaCloudStudio在线运行Javawindow系统安装java下载
Wesley13 Wesley13
2年前
Java程序员必须掌握的常用Linux命令。
点击上方蓝色文字关注↑↑↑↑↑!(https://oscimg.oschina.net/oscnet/2ab1caa1208a42049d64b55b0b38f09f.jpg)Java程序员也是半个运维了,在日常开发中经常会接触到Linux环境操作。小公司的开发人员甚至是兼了全运维的工作,下面整理了一些常用的Linux操作命令。
可莉 可莉
2年前
10.16 学习之初 约定 认识Linux 安装虚拟机 安装centos7
一,学习之初1.Linux系统管理员要养成的习惯要习惯使用命令行:命令行是Linux系统正常运行的核心,也是专业Linux系统工程师必须掌握的技能,所以我们要习惯使用命令行。2.操作要严谨在学习Linux命令行的过程中,你输入命令的速度会越来越快,效率也会越来越高。但与此同时,你也有可能输入了错误的命令而不自
Wesley13 Wesley13
2年前
Java 程序员必须掌握的 Linux 命令
  作为一个Java开发人员,有些常用的Linux命令必须掌握。即时平时开发过程中不使用Linux(Unix)或者mac系统,也需要熟练掌握Linux命令。因为很多服务器上都是Linux系统。所以,要和服务器机器交互,就要通过shell命令。  本文并不会对所有命令进行详细讲解,只给出常见用法和解释。具体用法可以使用–help查看帮助或者直接通过goog
Linux查看网络流量
作为一个非职业运维,不时需要查看Linux服务器上的网络流量状况。本文介绍几个常用的Linux查看网络流量命令,并简要介绍其用法。部分命令系统已经内置,某些命令则需要从软件仓库或者自行编译安装,本文以CentOS系统为例介绍软件安装方法。查看总流量ipip命令来自iproute2util包,是查看、配置网络/路由的工具。作为ifconfig的替代品
灵吉菩萨 灵吉菩萨
1个月前
给你一个学它的理由 – 无处不在的Linux
Linux作为所有程序员必备技能,真正能深入底层,驱动,硬件的程序员少,从而阻碍了技能上升通道。鉴于此,我们课程涵盖了Linux系统从基础、进阶、高阶、拓展内容,多阶段多层次提升Linux系统技能。无论你是Linux小白,想要系统入门Linux系统,还是对