主页 > Linux > 掌握Linux基本命令|不看这篇真的后悔,别怪我没提醒你

掌握Linux基本命令|不看这篇真的后悔,别怪我没提醒你

作为一名合格的运维人员,想要更快、更好地了解Linux服务器,必须具备快速查看Linux系统运行状态的能力,因此接下来会逐个说明与网卡网络、系统内核、系统负载、内存使用情况、当前启用终端数量、历史登录记录、命令执行记录以及救援诊断等相关命令的使用方法。这些命令都超级实用。是必须掌握的命令。

ifconfig命令

ifconfig命令用于获取网卡配置与网络状态等信息,格式为“ifconfig [网络设备][参数]”。

使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址(又称为MAC地址),以及RX、TX的接收数据包与发送数据包的个数及累计流量:

uname命令

uname命令用于查看系统内核与系统版本等信息,格式为“uname [-a]”。

在使用uname命令时,一般会固定搭配上-a参数来完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息。

顺带一提,如果要查看当前系统版本的详细信息,则需要查看redhat-release文件,其命令以及相应的结果如下:

free命令

free用于显示当前系统中内存的使用量信息,格式为“free [-h]”

为了保证Linux系统不会因资源耗尽而突然宕机,运维人员需要时刻关注内存的使用量。在使用free命令时,可以结合使用-h参数以更人性化的方式输出当前内存的实时使用量信息。表2-8所示为在的电脑上执行free -h命令之后的输出信息。需要注意的是,输出信息中的中文注释是额外添加的内容,实际输出时没有相应的参数解释。

who命令

who用于查看当前登入主机的用户终端信息,格式为“who [参数]”。

这三个简单的字母可以快速显示出所有正在登录本机的用户的名称以及他们正在开启的终端信息。

执行who命令的结果

last命令

last命令用于查看所有系统的登录记录,格式为“last [参数]”

使用last命令可以查看本机的登录记录。但是,由于这些信息都是以日志文件的形式保存在系统中,因此入侵者可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而判断系统有无被恶意入侵!

history命令

history命令用于显示历史执行过的命令,格式为“history [-c]”。

执行history命令能显示出当前用户在本地计算机中执行过的最近1000条命令记录。如果觉得1000不够用,还可以自定义/etc/profile文件中的HISTSIZE变量值。在使用history命令时,如果使用-c参数则会清空所有的命令历史记录。还可以使用“!编码数字”的方式来重复执行某一次的命令。

历史命令会被保存到用户家目录中的.bash_history文件中。Linux系统中以点(.)开头的文件均代表隐藏文件,这些文件大多数为系统服务文件,可以用cat命令查看其文件内容。

要清空当前用户在本机上执行的Linux命令历史记录信息,可执行如下命令:

sosreport命令

sosreport命令用于收集系统配置及架构信息并输出诊断文档,格式为sosreport

当Linux系统出现故障需要联系技术支持人员时,大多数时候都要先使用这个命令来简单收集系统的运行状态和服务配置信息,以便让技术支持人员能够远程解决一些小问题,亦或让他们能提前了解某些复杂问题。在下面的输出信息中,加粗的部分是收集好的资料压缩文件以及校验码,将其发送给技术支持人员即可:

工作目录切换命令

工作目录指的是用户当前在系统中所处的位置。由于工作目录会牵涉系统存储结构相关的知识,因此后面将详细讲解这部分内容。现在只需简单了解一下这里的操作实验即可,如果不能完全掌握也没有关系,毕竟Linux系统的知识体系太过庞大,每一位初学人员都需要经历这么一段时期。

pwd命令

pwd命令用于显示用户当前所处的工作目录,格式为“pwd [选项]”

cd命令

cd命令用于切换工作路径,格式为cd [目录名称]

这个命令应该是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。除了常见的切换目录方式,还可以使用“cd -”命令返回到上一次所处的目录,使用“cd..”命令进入上级目录,以及使用“cd ~”命令切换到当前用户的家目录,亦或使用“cd ~username”切换到其他用户的家目录。例如,可以使用“cd 路径”的方式切换进/etc目录中和/bin目录中,如果想返回上次切换的目录还可以通过“cd -”来实现。若想快速切换到当前用户家目录 可以通过cd ~实现

ls命令

ls命令用于显示目录中的文件信息,格式为“ls [选项] [文件] “

所处的工作目录不同,当前工作目录的文件也不同。使用-a参数可以看到所有文件(包括隐藏的文件)。使用“-l”参数可以查看文件属性,大小等详细信息。将这两个结合起来就像这样:

如果想查看某个目录的属性信息。就要加上-d参数。例如查看/etc的目录权限和属性信息:

文件文本编辑命令

在Linux中,有着著名的“一切皆文件”的说法。而对服务程序进行配置自然也就是编辑程序的配置文件。本节将讲解几条用于查看文本文件内容的命令。

cat命令

cat命令用于查看纯文本文件(内容较少的),格式为“cat [选项] {文件}”

Linux系统中有多个用于查看文本内容的命令,每个命令都有自己的特点,比如这个cat命令就是用于查看内容较少的纯文本文件的。

如果在查看文本的时候顺便还想显示行号的话。可以加上-n参数:

more命令

more命令用于查看纯文本文件(内容较多的),格式为“more [选项] {文件}”

如果需要阅读长篇小说或者非常长的配置文件,那么cat就真的不适合了。因为一旦使用cat命令阅读长篇的文本内容,信息就会在屏幕上快速翻滚,导致自己还没有来得及看到,内容就已经翻篇了。因此对于长篇的文本内容,推荐使用more命令来查看。more命令会在最下面使用百分比的形式来提示你已经阅读了多少内容。你还可以使用空格键或回车键向下翻页:

head命令

head命令用于查看格式为“head[选项] \{文件}”。

在阅读文本内容时,谁也难以保证会按照从头到尾的顺序往下看完整个文件。如果只想查看文本中前5行的内容,该怎么办呢?head命令可以派上用场了:

tail命令

tail命令用于查看纯文本文档的后N行或持续刷新内容,格式为“tail [选项] \{文件}”。

我们可能还会遇到另外一种情况,比如需要查看文本内容的最后20行,这时就需要用到tail命令了。tail命令的操作方法与head命令非常相似,只需要执行“tail -n 20 文件名”命令就可以达到这样的效果。tail命令最强悍的功能是可以持续刷新一个文件的内容,当想要实时查看最新日志文件时,这特别有用,此时的命令格式为“tail -f {文件名}”:

tr命令

tr命令用于替换文本文件中的字符,格式为“tr {原始字符} \{目标字符}”。

在很多时候,我们想要快速地替换文本中的一些词汇,又或者把整个文本内容都进行替换,如果进行手工替换,难免工作量太大,尤其是需要处理大批量的内容时,进行手工替换更是不现实。这时,就可以先使用cat命令读取待处理的文本,然后通过管道符把这些文本内容传递给tr命令进行替换操作即可。例如,把某个文本内容中的英文全部替换为大写:

wc命令

wc命令用于统计指定文本的行数、字数、字节数,格式为“wc [参数] {文本}”。

wc的参数以及作用:

在Linux系统中,passwd是用于保存系统账户信息的文件,要统计当前系统中有多少个用户,可以使用下面的命令来进行查询:

stat命令

stat命令用于查看文件的具体存储信息和时间等信息,格式为“stat {文件名称}”。

stat命令可以用于查看文件的存储信息和时间等信息,命令stat anaconda-ks.cfg会显示出文件的三种时间状态:Access、Modify、Change。这三种时间的区别将在下面的touch命令中详细详解:

cut命令

cut命令用于按“列”提取文本字符,格式为“cut [参数] {文本}”。

在Linux系统中,如何准确地提取出最想要的数据,这也是我们应该重点学习的内容。一般而言,按基于“行”的方式来提取数据是比较简单的,只需要设置好要搜索的关键词即可。但是如果按列搜索,不仅要使用-f参数来设置需要看的列数,还需要使用-d参数来设置间隔符号。passwd在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔的,接下来我们使用下述命令尝试提取出passwd文件中的用户名信息,即提取以冒号(:)为间隔符号的第一列内容:

diff命令

diff命令用于比较多个文本文件的差异,格式为“diff [参数] {文件}”。

在使用diff命令时,不仅可以使用—brief参数来确认两个文件是否不同,还可以使用-c参数来详细比较出多个文件的差异之处,这绝对是判断文件是否被篡改的有力神器。例如,先使用cat命令分别查看diffa和diffb文件的内容,然后进行比较:

接下来使用diff —brief命令显示比较后的结果,判断文件是否相同:

最后使用带有-c参数的diff命令来描述文件内容具体的不同:

文件目录管理命令

在Linux系统的日常运维工作中,还需要掌握对文件的创建、修改、复制、剪切、更名与删除等操作。

touch命令

touch命令用于创建空白文件或设置文件的时间,格式为“touch [选项] \{文件}”。

在创建空白的文本文件方面,这个touch命令相当简捷,简捷到没有必要特别去研究。比如,touch test命令可以创建出一个名为test的空白文本文件。对touch命令来讲,有难度的操作主要是体现在设置文件内容的修改时间(mtime)、文件权限或属性的更改时间(ctime)与文件的读取时间(atime)上面。touch命令的参数及其作用如下

接下来,我们先使用ls命令查看一个文件的修改时间,然后修改这个文件,最后再通过touch命令把修改后的文件时间设置成修改之前的时间 :

mkdir命令

mkdir命令用于创建空白的目录,格式为“mkdir [选项] {目录}”。

在Linux系统中,文件夹是最常见的文件类型之一。除了能创建单个空白目录外,mkdir命令还可以结合-p参数来递归创建出具有嵌套叠层关系的文件目录。

cp命令

cp命令用于复制文件或目录,格式为“cp [选项] {源文件} {目标文件}”。

大家对文件复制操作应该不陌生,在Linux系统中,复制操作具体分为3种情况:

●如果目标文件是目录,则会把源文件复制到该目录中;

●如果目标文件也是普通文件,则会询问是否要覆盖它;

●如果目标文件不存在,则执行正常的复制操作。

cp命令常用参数如下:

Linux对我们的生活有着很大的影响。然而在Linux上,你通常应该使用终端命令,而不是只要点击启动器图像(就像你在Windows上操作那样)。

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!