02.Linux的基础命令

Posted MirrorML

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02.Linux的基础命令相关的知识,希望对你有一定的参考价值。

第二讲 Linux常用命令

课程大纲课程内容学习效果掌握目标
Linux基础Linux的命令掌握
常用命令掌握

五、Linux常用命令

(一)Linux的命令

1、命令的必要性

虽然我们可以使用图形化界面,但图形化界面会影响服务器的性能。一般服务器需要长时间运行(一般为7*24小时不间断运行),图形化的桌面版系统庞大,复杂,容易造成崩溃。
命令行界面不够美观,但运行稳定,干扰性能项相对较少,对于开发人员而言操作也比较快捷方便。

图形化界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oIQXY49W-1639988203258)(media/998a04cbfaa5d8d68c5b67810dae7a91.png)]

命令行界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dcQ36kfo-1639988203260)(media/d9a15b45ced819683755f57e9216a515.png)]

2、命令的格式和语法

(1)命令的格式和语法

命令+空格+选项+空格+参数

(2)命令详解

命令:指单词或者词组的全称或者简写

选项:选项是包括一个或多个字母的代码,前面有一个“-”连字符,主要用于扩展基础命令

参数:命令操作的对象

(3)举例说明

如上图的命令行界面,ls -l /root
是一个完整的命令,其中“ls”是命令,“-l”是选项,“/root”是参数,执行ls -l /root
后会将结果展现给我们。

3、命令的分类

(1)命令分类

内部命令:也称作内置命令,随着Linux系统启动而加载到内存中,是常驻内存的,调用速度快,执行效率高。

**外部命令:**在Linux系统启动时并不随系统一起被加载到内存中,而是在需要时才将其从磁盘加载到内存中,调用速度相对较慢。

(2)命令类型的鉴别

如何区分某个命令是内部命令还是外部命令?

**type命令:**查看指定的命令是否是内部命令

type命令的语法:type+空格+命令

(3)案例

[root@node-1 ~]# type ifconfig

ifconfig 是 /usr/sbin/ifconfig

[root@node-1 ~]# type cd

cd 是 shell 内嵌

4、常用快捷键和基础命令

(1)who

基本语法:

语法功能描述
whoami显示自身用户名称
who am i显示登录用户的用户名
who看当前有哪些用户登录到了本台机器上

案例:(root用户登录切换到offcn用户下操作)

[offcn@node-1 root]$ whoami

offcn

[offcn@node-1 root]$ who am i

root pts/1 2021-01-28 14:51 (192.168.254.1)

[offcn@node-1 root]$ who

root :0 2021-01-27 15:26 (:0)

root pts/0 2021-01-28 09:34 (192.168.254.1)

root pts/1 2021-01-28 14:51 (192.168.254.1)

(2)pwd

基本语法:

语法功能描述
pwd显示当前工作目录的绝对路径

案例:

[root@node-1 offcn]# pwd

/home/offcn

(3)cd

基本语法:

语法功能描述
cd 绝对路径切换到所给的绝对路径下
cd 相对路径切换到所给的相对路径下
cd ~或者cd回到自己的家目录
cd -回到上一次所在目录
cd …回到当前目录的上一级目录

案例:

  • cd 绝对路径

[root@node-1 /]# cd /home/

[root@node-1 home]# pwd

/home

  • cd 相对路径

[root@node-1 home]# cd offcn/

[root@node-1 offcn]# pwd

/home/offcn

  • cd ~或者cd

[root@node-1 offcn]# cd

[root@node-1 ~]# pwd

/root

  • cd -

[root@node-1 ~]# cd -

/home/offcn

  • cd …

[root@node-1 offcn]# cd …

[root@node-1 home]# pwd

/home

(4)ifconfig

基本语法:

语法功能描述
ifconfig查看网络配置信息

案例:

[root@node-1 home]# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.254.111 netmask 255.255.255.0 broadcast 192.168.254.255

inet6 fe80::f9ea:b6c8:d16:6956 prefixlen 64 scopeid 0x20<link>

ether 00:0c:29:ca:ea:43 txqueuelen 1000 (Ethernet)

RX packets 49964 bytes 59153579 (56.4 MiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 21252 bytes 1451157 (1.3 MiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536

inet 127.0.0.1 netmask 255.0.0.0

inet6 ::1 prefixlen 128 scopeid 0x10<host>

loop txqueuelen 1000 (Local Loopback)

RX packets 560 bytes 62904 (61.4 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 560 bytes 62904 (61.4 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500

inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255

ether 52:54:00:93:8f:49 txqueuelen 1000 (Ethernet)

RX packets 0 bytes 0 (0.0 B)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 0 bytes 0 (0.0 B)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

(5)history

基本语法:

语法功能描述
history查看历史命令(1000条)

案例:

[root@node-1 home]# history

1 ll

2 pwd

3 ifconfig

(6)快捷键

基本语法:

语法功能描述
ctrl + c停止进程
ctrl + l清屏
tab键自动补全命令
上下键查找执行过的命令

(二)常用命令

1、帮助类命令

帮助类命令的作用:查看命令的含义以及使用方法。

whatis

基本语法:

语法功能描述
whatis + 命令描述一个命令执行什么功能

案例:

[root@node-1 home]# whatis who

who (1) - 显示已经登录的用户

更新信息库: mandb

man

基本语法:

语法功能描述
man + 命令Man即manual手册的简写。指的是命令的使用手册

案例:(退出手册查看方式->键入q)

help

基本语法:

语法功能描述
help + 内部命令查看内部命令的使用帮助
外部命令 + --help查看外部命令的使用帮助

案例:

  • help + 内部命令

[root@node-1 ~]# help pwd

pwd: pwd [-LP]

打印当前工作目录的名字。

选项:

-L 打印 $PWD 变量的值,如果它命名了当前的

工作目录

-P 打印当前的物理路径,不带有任何的符号链接

默认情况下,`pwd’ 的行为和带 `-L’ 选项一致

退出状态:

除非使用了无效选项或者当前目录不可读,否则

返回状态为0。

  • 外部命令 + --help

[root@node-1 ~]# ls --help

用法:ls [选项]… [文件]…

List information about the FILEs (the current directory by default).

Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.

-a, --all 不隐藏任何以. 开始的项目

2、文本编辑命令

(1)Linux文本编辑器介绍

在Windows中,我们可以使用记事本、word等等应用程序来编辑文件,那么在Linux里面我们需要使用vi或者vim编辑器来编辑文件。vi或者vim编辑器也是作为Linux中的命令存在的。

基本语法:

语法功能描述
vi/vim + 文件进入某文件的编辑界面对文件内容进行编辑

vi
是老式的文字处理器,来源于Unix操作系统,所有的类Unix系统也都会内建vi文本编辑器。

vim可以理解为是vi的增强版,现在可称为“Vi Improved”(Vi改进版),原来也被称为“Vi
Imitation”(Vi模拟版),vim比vi拥有更强大的编辑能力,增加了以字体颜色辨别语法的正确性,跨平台使用等功能,更加方便了程序的设计。

vi和vim在使用效果上的简单对比:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sJyIE5Kk-1639988203260)(media/6aee7132bf81338e53ba049664f6a85c.jpeg)]

vi/vim的三种模式:

我们在使用vi/vim时。主要有三种模式:一般模式、编辑模式、指令模式,不同模式有不同的功能,根据自己的需要使用不同的模式。

在使用之前,先准备一个测试用的文本文件,如下:

(2)Linux文本编辑器使用
a.一般模式

用vi/vim
打开一个文件就直接进入一般模式了。在该模式中,可以使用上下左右按键来移动光标,
也可以使用复制、粘贴、删除等功能来处理文件内容,但是这里的复制、粘贴、删除与Windows的操作是不同的。

常用语法:

语法功能描述
yy复制光标当前一行
y + 数字N + y 、 数字 + yy从光标闪烁处开始往后复制N行
p即paste,将复制的内容粘贴到光标所在行的下一行
u即undo,撤销上一步的操作
dd即delete,删除光标所在的当前行
d + 数字N + d从光标所在行开始往后删除N行
shift + ^移动到光标所在行的行头
shift + $移动到光标所在行的行尾
gg移动到文件的第一行
shift + g移动到文件的末尾行
数字N + shift + g移动到文件的第N行处
b.编辑模式

在一般模式中可以进行删除、复制、粘贴等等的动作,但是却无法编辑文件内容。我们需要进入编辑模式才可以编辑具体内容,我们可以在一般模式下键入『i,
I, o, O, a, A, r, R』等任一字母就可进入编辑模式。

进入编辑模式,会在左下方出现『INSERT 或 REPLACE 或 插入
』的字样。编辑完成后,按下『Esc』这个按键可退出编辑模式,回到一般模式,在一般模式下,可以进入指令模式,选择保存或者不保存文件。

常用语法:

语法功能描述
键入“i”在光标所在位置处进入编辑模式
键入“I”将光标定位到所在行的行头进入编辑模式
键入“a”将光标定位到当前位置的下一字节进入编辑模式
键入“A”将光标定位到所在行的行尾进入编辑模式
键入“o”在光标所在行的下一行新建一行进入编辑模式
键入“O”在光标所在行的上一行新建一行进入编辑模式
c.指令模式

该模式也被称之为底行模式,在一般模式下,输入『 : /
?』3个中的任何一个按键,就可以将光标移动到页面最底一行进入到指令模式,在该模式下可以进行保存、不保存、显示行号、搜索关键字等操作。按下『Esc』这个按键可退出编辑模式。

常用语法:

语法功能描述
键入“:或 / 或 ?”在一般模式下进入指令模式
键入“:”后输入“w”并回车保存
键入“:”后输入“q”并回车退出文本编辑器
键入“:”后输入“wq”并回车保存文本内容并退出文本编辑器
键入“:”后输入“!”并回车强制执行
键入“:”后输入“q!”并回车不保存文件,强制退出文本编辑器
键入“:”后输入“wq!”并回车强制保存并退出文本编辑器
一般模式下按下 Shift + z + z对非只读文件实现快速保存
键入“/”后输入“关键词”并回车查询文件中的关键词,按n向下查找下一个关键词
键入“?”后输入“关键词”并回车查询文件中的关键词,按n向上查找下一个关键词
键入“:”后输入“set nu名,”并回车显示每行的行号,取消 set nonu
键入“:”后输入“%s/word1/word2”并回车将文件中的word1替换为word2
(3)模式间转换

三种模式之间的转换如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c7iBxTwF-1639988203261)(media/224af6abb4f370ca8af6587a5fe9e445.png)]

实战演练

**需求1:**将测试文件“vi测试数据.txt”中含有“444”关键字的那行数据删除。

**需求2:**在测试文件末尾新增一行数据“this is last line”。

将修改后的测试文件进行保存退出。

3、文件目录类命令

(1)ls

基本语法:

语法功能描述
ls + [选项] + 目录显示指定目录下的所有子目录和文件 选项: -a :all,全部的文件,连同隐藏的文档( 开头为 . 的文件) 一起列出来(常用) -l :以详情列表列出,包含文件的属性与权限等等数据;(常用) -i :查看文件的inode号(inode存储文件的详细信息)

案例:

[root@node-1 test]# ls

d1 test1.txt test2.txt vi测试数据.txt

[root@node-1 test]# ls -l

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# ll -a

总用量 20

drwxr-xr-x. 3 root root 76 1月 31 16:35 .

dr-xr-xr-x. 18 root root 236 1月 29 17:18 …

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# ll -i

总用量 20

35513412 drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

35296254 -rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

35299497 -rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

35299499 -rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

(2)touch

常用语法:

语法功能描述
touch + 文件名称用来创建新的空文件

案例:

[root@node-1 data]# ll

总用量 0

[root@node-1 data]# touch test.txt

[root@node-1 data]# ll

总用量 0

-rw-r–r--. 1 root root 0 1月 29 15:50 test.txt

(3)mkdir

基本语法:

语法功能描述
mkdir + [选项] +要创建的目录创建一个新的目录 选项: -p :递归创建多级目录

案例:

[root@node-1 test]# ll

总用量 20

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# mkdir data

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 2 root root 6 1月 31 16:30 data

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# mkdir -p d1/d2/d3

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

drwxr-xr-x. 2 root root 6 1月 31 16:30 data

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# ll d1/d2/d3/

总用量 0

(4)echo 和 重定向

**echo:**输出内容

**重定向:**将数据写入到指定文件,分为追加写“>>”和覆盖写“>”

常用语法:

语法功能描述
echo + 输出内容(文本/命令结果/变量)将内容进行输出显示
echo + 输出内容 >> 文件将输出内容追加存储在指定文件中
echo + 输出内容 > 文件将输出内容覆盖存储在指定文件中

案例:

[root@node-1 data]# echo “hello”

hello

[root@node-1 data]# echo `date`

2021年 01月 29日 星期五 16:47:14 CST

[root@node-1 data]# echo $PWD

/test/data

[root@node-1 data]# cat test.txt

[root@node-1 data]# echo “hello” >> test.txt

[root@node-1 data]# echo `date` >> test.txt

[root@node-1 data]# cat test.txt

hello

2021年 01月 29日 星期五 16:48:52 CST

[root@node-1 data]# echo “world” > test.txt

[root@node-1 data]# cat test.txt

world

(5)printf

基本语法:

语法功能描述
printf + 格式 + 参数将数据指定格式进行输出

案例:

[root@node-1 data]# printf “hello world”

hello world[root@node-1 data]#

[root@node-1 data]# printf “hello world \\n”

hello world

[root@node-1 data]# printf “%s \\t %d \\t %s \\n” “zhangsan” 16 “man”

zhangsan 16 man

(6)mv

基本语法:

语法功能描述
mv + 原文件名 + 新文件名对文件进行重命名
mv + 文件/目录 + 路径将文件/目录移动到指定路径下

案例:

[root@node-1 data]# ll

总用量 4

-rw-r–r--. 1 root root 6 1月 29 16:49 test.txt

[root@node-1 data]# mv test.txt test1.txt

[root@node-1 data]# ll

总用量 4

-rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

[root@node-1 data]# mv test1.txt /opt/

[root@node-1 data]# ll /opt/

总用量 4

drwxr-xr-x. 2 root root 6 9月 7 2017 rh

-rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

(7)cp

基本语法:

语法功能描述
cp + 原文件 + 目标路径将一个或多个文件复制到指定的路径下
cp + 原文件 + 目标文件将一个文件复制到目标文件中 目标文件: 1、已存在文件,则覆盖其内容 2、不存在文件,则自动创建新文件
cp -r + 原目录 + 目标路径将该目录以及所有子目录下的所有文件拷贝到目标路径下 目标路径: 1、已存在路径,则拷贝到此路径下 2、不存在路径,则自动创建新目录

案例:

[root@node-1 opt]# ll

总用量 4

drwxr-xr-x. 2 root root 6 9月 7 2017 rh

-rw-r–r--. 1 root root 0 1月 31 09:24 test11.txt

-rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# ll /test/

总用量 12

drwxr-xr-x. 2 root root 6 1月 31 09:35 data

-rw-r–r--. 1 root root 8890 1月 29 10:50 vi测试数据.txt

[root@node-1 opt]# cp test1* /test/

[root@node-1 opt]# ll /test/

总用量 16

drwxr-xr-x. 2 root root 6 1月 31 09:35 data

-rw-r–r--. 1 root root 0 1月 31 09:36 test11.txt

-rw-r–r--. 1 root root 6 1月 31 09:36 test1.txt

-rw-r–r--. 1 root root 8890 1月 29 10:50 vi测试数据.txt

[root@node-1 opt]# cp -r /test/data/ /opt/

[root@node-1 opt]# ll

总用量 4

drwxr-xr-x. 2 root root 6 1月 31 09:37 data

drwxr-xr-x. 2 root root 6 9月 7 2017 rh

-rw-r–r--. 1 root root 0 1月 31 09:24 test11.txt

-rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# cp -r /test/data/ /opt/data2

[root@node-1 opt]# ll

总用量 4

drwxr-xr-x. 2 root root 6 1月 31 09:37 data

drwxr-xr-x. 2 root root 6 1月 31 09:37 data2

drwxr-xr-x. 2 root root 6 9月 7 2017 rh

-rw-r–r--. 1 root root 0 1月 31 09:24 test11.txt

-rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

(8)ln 链接

基本语法:

语法功能描述
ln + 原文件 + 目标文件给原文件创建一个硬链接存放到目标文件
ln -s + 原文件(绝对路径) + 目标文件给原文件创建一个软链接存放到目标文件

案例:

[root@node-1 opt]# ll -i

总用量 4

102334040 drwxr-xr-x. 2 root root 6 1月 31 10:01 data

102286313 drwxr-xr-x. 2 root root 6 9月 7 2017 rh

137008 -rw-r–r--. 1 root root 0 1月 31 09:24 test11.txt

67377416 -rw-r–r--. 1 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# ll -i data/

总用量 0

[root@node-1 opt]# ln test1.txt data/

[root@node-1 opt]# ll -i data/

总用量 4

67377416 -rw-r–r--. 2 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# ln test1.txt data/test1-1.txt

[root@node-1 opt]# ll -i data/

总用量 8

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1-1.txt

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# ln -s /opt/test11.txt data/

[root@node-1 opt]# ll -i data/

总用量 8

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1-1.txt

102334041 lrwxrwxrwx. 1 root root 15 1月 31 10:03 test11.txt -> /opt/test11.txt

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1.txt

[root@node-1 opt]# ln -s /opt/test11.txt data/test11-1.txt

[root@node-1 opt]# ll -i data/

总用量 8

102334042 lrwxrwxrwx. 1 root root 15 1月 31 10:03 test11-1.txt ->
/opt/test11.txt

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1-1.txt

102334041 lrwxrwxrwx. 1 root root 15 1月 31 10:03 test11.txt -> /opt/test11.txt

67377416 -rw-r–r--. 3 root root 6 1月 29 16:49 test1.txt

(9)cat

基本语法:

语法功能描述
cat + [选项] + 文件查看文件内容,从第一行开始输出显示 选项: -n :列出行号,连同空白行也会有行号 -b :列出行号,仅对非空白行显示行号 -s :当遇到连续两行以上的空白行,转换为一行的空白行 -v :列出一些看不出来的特殊字符 (特殊字符输出ctrl+V ctrl+字符,比如输出空字符ctrl+V ctrl+@) -E :在每行结束处显示 $ -T :将 TAB 字符显示为 ^I -e :等价于"-vE"选项 -t :等价于"-vT"选项 -A : --show-all,等价于 -vET

案例:

[root@node-1 opt]# cat -n test11.txt

1 line 1

2

3

4 line 2

5 line 3

[root@node-1 opt]# cat -b test11.txt

1 line 1

2 line 2

3 line 3

[root@node-1 opt]# cat -s test11.txt

line 1

line 2

line 3

[root@node-1 opt]# cat -v test11.txt

line 1

line 2

line 3^@

[root@node-1 opt]# cat -E test11.txt

line 1 $

$

$

line 2$

line 3$

[root@node-1 opt]# cat -T test11.txt

line 1^I

line 2

line 3

[root@node-1 opt]# cat -e test11.txt

line 1 $

$

$

line 2$

line 3^@$

[root@node-1 opt]# cat -t test11.txt

line 1^I

line 2

line 3^@

[root@node-1 opt]# cat -A test11.txt

line 1^I$

$

$

line 2$

line 3^@$

(10)tac <-> cat

基本语法:

语法功能描述
tac + 文件将文件内容倒序输出

案例:

[root@node-1 opt]# tac test11.txt

line 3

line 2

line 1

(11)head

基本语法:

语法功能描述
head + [选项] + 文件从头开始显示文件内容,默认显示前10行 选项: -c : 显示的字节数 -n : 显示的行数

案例:

[root@node-1 test]# head vi测试数据.txt

this is line 1

this is line 2

this is line 3

this is line 4

this is line 5

this is line 6

this is line 7

this is line 8

this is line 9

this is line 10

[root@node-1 test]# head -c 10 vi测试数据.txt

this is li

[root@node-1 test]# head -n 2 vi测试数据.txt

this is line 1

this is line 2

(12)tail

基本语法:

语法功能描述
tail + [选项] + 文件倒序按行显示文件内容,默认显示后10行 选项: -c : 倒序按字节显示的字节数 -n : 倒序按行显示的行数 -f : 实时追踪文档的更新内容 -F : 根据文件名字进行实时追踪,当文件改名或删除文件后,保持重试,当有新的文件和它同名时,继续追踪
tailf + [选项] + 文件几乎等同于tail -f, 当文件改名之后它也能继续跟踪。与tail -f不同的是,如果文件不增长,它不会去访问磁盘文件

案例:

#换行符占用2个字节

[root@node-1 test]# tail -c 10 vi测试数据.txt

line 500

[root@node-1 test]# tail -n 2 vi测试数据.txt

this is line 499

this is line 500

(13)more

基本语法:

语法功能描述
more + 文件查看文件内容,一页一页的显示文件内容,并且显示当前查看文件的进度

功能使用说明

空白键 (space)或按Ctrl+F:向下翻一页

按Enter键:向下翻一行

按f键:向下翻两页

按b键:向上翻一页

按=:输出当前行的行号

按v键:调用vi编辑器

输入/后面跟需要搜索的字符串,按回车进行搜索,按n匹配下一个字符串

按q键:离开more ,不再显示该文件内容

案例:

[root@node-1 test]# more vi测试数据.txt

this is line 1

this is line 2

this is line 3

this is line 4

this is line 5

–More–(1%)

(14)less

基本语法:

语法功能描述
less + 文件使用与more比较类似,可查看文件内容,

功能使用说明:

按Enter键或向下键:代表向下翻一行

按y键或向上键:代表向上翻一行

按pagedown键或f键或空格键:向下翻动一页

按pageup键或b键:向上翻动一页

输入/后面跟需要搜索的字符串,按回车进行搜索,按n匹配下一个字符串按N匹配上一个字符串

输入?后面跟需要搜索的字符串,按回车进行搜索,按n匹配上一个字符串按N匹配下一个字符串

按v键:调用vi编辑器

按q键:离开less,不再显示该文件内容

案例:

[root@node-1 test]# less 测试数据.txt

(15)egrep

基本语法:

语法功能描述
egrep + 字符串规则 + 文件或目录在文件或目录中查找指定的字符串

案例:

[root@node-1 test]# egrep 99 测试数据.txt

this is line 99

this is line 199

this is line 299

this is line 399

this is line 499

(16)diff

基本语法:

语法功能描述
diff + [选项] + 文件1 + 文件2比较给定的两个文件的不同 选项: -i :不检查大小写的不同 -y :并列的显示文件的异同之处

案例:

[root@node-1 test]# cat test1.txt

this is line 1

this is line 2

this is line 3

This is line 4

this is line 05

[root@node-1 test]# cat test2.txt

this is line 1

my line 2

i love you

this is line 4

this is line 5

[root@node-1 test]# diff -iy test1.txt test2.txt

this is line 1 this is line 1

this is line 2 | my line 2

this is line 3 | i love you

This is line 4 this is line 4

this is line 05 | this is line 5

(17)rm

基本语法:

语法功能描述
rm + [选项] + 文件或目录删除文件或目录 选项: -r :删除目录以及其下的所有文件 -f :省略“是否删除”的确认询问

案例:

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 2 root root 6 1月 31 09:35 data

-rw-r–r--. 1 root root 0 1月 31 09:36 test11.txt

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# rm -f test11.txt

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 2 root root 6 1月 31 09:35 data

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# rm -rf data/

[root@node-1 test]# ll

总用量 20

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

(18)rmdir

基本语法:

语法功能描述
rmdir + 要删除的空目录删除一个空目录

案例:

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

drwxr-xr-x. 2 root root 6 1月 31 16:30 data

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

[root@node-1 test]# rmdir d1

rmdir: 删除 “d1” 失败: 目录非空

[root@node-1 test]# rmdir data

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 8892 1月 31 14:47 vi测试数据.txt

4、 时间日期类命令

基本语法:

语法功能描述
date + 格式化字符串显示当前日期
date -d + 参数 + [格式化字符串]显示非当前日期
date -s + 时间格式字符串设置系统时间
cal + [选项]查看日历 选项: -3 :查看近3月的日历 年份 :查看某年的全年的日历
hwclock查看硬件时间
hwclock -s将硬件时间写入到系统时间
ntpdate -u + 远程时间服务器地址同步远程(网络)时间服务器的时间

案例:

[root@node-1 test]# date

2021年 02月 01日 星期一 09:16:51 CST

[root@node-1 test]# date +"%Y-%m-%d"

2021-02-01

[root@node-1 test]# date -d next-day +%Y%m%d

20210202

[root@node-1 test]# date -d yesterday +%Y%m%d

20210131

[root@node-1 test]# date -s “20210101”

2021年 01月 01日 星期五 00:00:00 CST

[root@node-1 test]# cal

二月 2021

日 一 二 三 四 五 六

1 2 3 4 5 6

7 8 9 10 11 12 13

14 15 16 17 18 19 20

21 22 23 24 25 26 27

28

[root@node-1 test]# cal -3

一月 2021 二月 2021 三月 2021

日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六

1 2 1 2 3 4 5 6 1 2 3 4 5 6

3 4 5 6 7 8 9 7 8 9 10 11 12 13 7 8 9 10 11 12 13

10 11 12 13 14 15 16 14 15 16 17 18 19 20 14 15 16 17 18 19 20

17 18 19 20 21 22 23 21 22 23 24 25 26 27 21 22 23 24 25 26 27

24 25 26 27 28 29 30 28 28 29 30 31

31

[root@node-1 test]# cal 2022

#12个月的日历,此处省略输出结果…

[root@node-1 test]# hwclock

2021年02月01日 星期一 09时19分33秒 -0.695238 秒

[root@node-1 test]# hwclock -s

[root@node-1 test]# date

2021年 02月 01日 星期一 09:19:49 CST

[root@node-1 test]# ntpdate -u ntp.api.bz

1 Feb 09:30:03 ntpdate[41937]: adjust time server 114.118.7.161 offset -0.08740
sec

5、用户管理命令

(1)useradd

基本语法:

语法功能描述
useradd + 用户名添加新用户(前提是有权限)

案例:

[root@node-1 ~]# useradd hadoop

(2)passwd

基本语法:

语法功能描述
passwd + 用户名设置用户密码

案例:

[root@node-1 ~]# passwd hadoop

更改用户 hadoop 的密码 。

新的 密码:

无效的密码: 密码是一个回文

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。

(3)id

基本语法:

语法功能描述
id + 用户名判断用户是否存在

案例:

[root@node-1 ~]# id hadoop

uid=1001(hadoop) gid=1001(hadoop) 组=1001(hadoop)

(4)su

基本语法:

语法功能描述
su + 用户名切换用户,只能获得用户执行权限,不能获得环境变量
su - + 用户名切换用户,获得该用户的执行权限和环境变量

案例:

[root@node-1 ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[root@node-1 ~]# su hadoop

[hadoop@node-1 root]$ echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[hadoop@node-1 root]$ su - hadoop

密码:

上一次登录:一 2月 1 10:31:40 CST 2021pts/2 上

[hadoop@node-1 ~]$ echo $PATH

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hadoop/.local/bin:/home/hadoop/bin

(5)visudo

基本语法:

语法功能描述
visudo等价于vi /etc/sudoers,修改用户权限

案例:

[root@node-1 ~]# visudo

## Sudoers allows particular users to run various commands as

## Allow root to run any commands anywhere

root ALL=(ALL) ALL

hadoop ALL=(ALL) ALL

(6)sudo

基本语法:

语法功能描述
sudo + 命令设置普通用户以root用户权限执行命令

案例:

[hadoop@node-1 home]$ pwd

/home

[hadoop@node-1 home]$ ll

总用量 1164

-rw-r–r--. 1 root root 1186996 1月 28 09:56 app-2021-01-10.log

drwx------. 5 hadoop hadoop 128 2月 1 13:38 hadoop

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

[hadoop@node-1 home]$ rm -rf app-2021-01-10.log

rm: 无法删除"app-2021-01-10.log": 权限不够

[hadoop@node-1 home]$ sudo rm -rf app-2021-01-10.log

[sudo] hadoop 的密码:

配置成采用sudo命令时,不需要输入密码,则配置如下:

[root@node-1 ~]# visudo

## Sudoers allows particular users to run various commands as

## Allow root to run any commands anywhere

root ALL=(ALL) ALL

hadoop ALL=(ALL) NOPASSWD:ALL

(7)usermod

基本语法:

语法功能描述
usermod + 选项 + 参数修改用户信息 选项: -g :修改用户所属组 **-**l :修改用户名称

案例:

# usermod -l 新用户名 旧用户名

[root@node-1 ~]# usermod -l hadoop2 hadoop

[root@node-1 ~]# ll /home/

总用量 1164

-rw-r–r--. 1 root root 1186996 1月 28 09:56 app-2021-01-10.log

drwx------. 5 hadoop2 hadoop 128 2月 1 13:38 hadoop

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

[root@node-1 ~]# id hadoop2

uid=1001(hadoop2) gid=1001(hadoop) 组=1001(hadoop)

# usermod -g 用户组 用户名

[root@node-1 ~]# usermod -g offcn hadoop2

[root@node-1 ~]# id hadoop2

uid=1001(hadoop2) gid=1000(offcn) 组=1000(offcn)

[root@node-1 ~]# ll /home/

总用量 1164

-rw-r–r--. 1 root root 1186996 1月 28 09:56 app-2021-01-10.log

drwx------. 5 hadoop2 offcn 128 2月 1 13:38 hadoop

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

(8)userdel

基本语法:

语法功能描述
userdel + 用户名删除用户但保存用户主目录
userdel -r + 用户名删除用户以及对应的主目录

案例:

[root@node-1 ~]# id tom

uid=1002(tom) gid=1002(tom) 组=1002(tom)

[root@node-1 ~]# id hadoop2

uid=1001(hadoop2) gid=1000(offcn) 组=1000(offcn)

[root@node-1 ~]# ll /home/

总用量 1164

drwx------. 5 hadoop2 offcn 128 2月 1 13:38 hadoop

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

drwx------. 3 tom tom 78 2月 1 14:53 tom

[root@node-1 ~]# userdel tom

[root@node-1 ~]# id tom

id: tom: no such user

[root@node-1 ~]# ll /home/

总用量 1164

drwx------. 5 hadoop2 offcn 128 2月 1 13:38 hadoop

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

drwx------. 3 1002 1002 78 2月 1 14:53 tom

[root@node-1 ~]# userdel -r hadoop2

[root@node-1 ~]# id hadoop2

id: hadoop2: no such user

[root@node-1 ~]# ll /home/

总用量 1164

drwx------. 15 offcn offcn 4096 2月 1 13:39 offcn

drwx------. 3 1002 1002 78 2月 1 14:53 tom

6、用户组管理命令

(1)查看已创建用户组

[root@node-1 home]# cat /etc/group

offcn❌1000:

hadoop❌1001:

(2)groupadd

基本语法:

语法功能描述
groupadd + 用户组名创建一个新的工作组

案例:

[root@node-1 home]# groupadd jerry

[root@node-1 home]# cat /etc/group

offcn❌1000:

hadoop❌1001:

jerry❌1002:

(3)groupmod

基本语法:

语法功能描述
groupmod -n + 新组名 + 旧组名修改用户组名

案例:

[root@node-1 home]# groupmod -n jerry2 jerry

[root@node-1 home]# cat /etc/group

offcn❌1000:

hadoop❌1001:

jerry2❌1002:

(4)groupdel

基本语法:

语法功能描述
groupdel + 组名删除组

案例:

[root@node-1 home]# groupdel jerry2

[root@node-1 home]# cat /etc/group

offcn❌1000:

hadoop❌1001:

7、文件权限类命令

(1)文件属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls
–l命令来显示一个文件的属性以及文件所属的用户和组。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s5qCXaNW-1639988203263)(media/cf47db04e11a5e9127790c9063d215f8.jpeg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2LSNeJtM-1639988203263)(media/9e9f2ef604e80ba8a9e8f4970f21e6cf.png)]

例如:

[root@node-1 test]# ll

总用量 20

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

-rw-r–r--. 1 root root 66 1月 31 15:44 test2.txt

从左到右的10个字符表示:

如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:

  • 第0位表示类型
字符含义
-代表文件
d代表目录
c字符流,串行端口设备,例如键盘、鼠标(一次性读取装置)
ssocket
p管道 pipe
l链接文档(link file)
b设备文件,可供储存的接口设备(可随机存取装置)
  • 第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User

  • 第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group

  • 第7-9位确定其他用户拥有该文件的权限 —Other

文件类型属主权限属组权限其他用户权限
01 2 34 5 67 8 9
dr w xr - xr - x
目录文件读 写 执行读 写 执行读 写 执行
(2)文件权限
a. 作用到文件
权限解读
r代表可读(read): 可以读取,查看
w代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件。
x代表可执行(execute):可以被系统执行
b. 作用到目录
权限解读
r代表可读,可以查看目录中的文件列表
w代表可修改,可对目录内的文件进行创建、删除、移动等操作
x代表可以进入该目录

案例:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3gydiwVD-1639988203264)(media/ed461d0e35e2611acbbc2950233b4247.png)]

  • 如果是文件:链接数指的是硬链接个数。

  • 如果是目录:链接数指的是子文件夹个数。

(3)chmod
a.字母方式改变权限

基本语法:

语法功能描述
chmod + ugoa±=rwx + 文件或目录变更文件或目录的权限

u:所属主 g:所属组 o:其它用户 a:(all)代表ugo

+:增加权限 -:去掉权限 =:仅有某些权限

文件: r查看;w修改;x执行文件

目录: r列出目录内容;w在目录中创建和删除;x进入目录

案例:

[root@node-1 test]# ll

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chmod u+x test1.txt

[root@node-1 test]# ll

-rwxr–r--. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chmod u-x test1.txt

[root@node-1 test]# ll

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chmod g=wx test1.txt

[root@node-1 test]# ll

-rw–wxr–. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chmod a-w test1.txt

[root@node-1 test]# ll

-r----xr–. 1 root root 76 1月 31 16:02 test1.txt

b.数字方式改变权限

基本语法:

语法功能描述
chmod + 十进制数字 + 文件或目录变更文件或目录的权限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5fn31Iz0-1639988203265)(media/4d93d8e310ba374b8768961405f71f5e.png)]

案例:

[root@node-1 test]# ll

-rwxrw-r–. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chmod 644 test1.txt

[root@node-1 test]# ll

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

(4)chown

基本语法:

语法功能描述
chown + 用户名 + 文件或目录变更文件或目录的所有者(只有root用户可操作)
chown + 用户名:用户组 + 文件或目录变更文件或目录的所有者及所属组
chown -R + 用户名 + 目录递归变更目录的所有者
chown -R + 用户名:用户组 + 目录递归变更目录的所有者及所属组

案例:

[root@node-1 test]# ll

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 root root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chown offcn test1.txt

[root@node-1 test]# ll

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 offcn root 76 1月 31 16:02 test1.txt

[root@node-1 test]# chown offcn:offcn test1.txt

[root@node-1 test]# ll

drwxr-xr-x. 3 root root 16 1月 31 16:30 d1

-rw-r–r--. 1 offcn offcn 76 1月 31 16:02 test1.txt

[root@node-1 test]# chown -R offcn d1

[root@node-1 test]# ll

drwxr-xr-x. 3 offcn root 16 1月 31 16:30 d1

-rw-r–r--. 1 offcn offcn 76 1月 31 16:02 test1.txt

[root@node-1 test]# ll d1/

drwxr-xr-x. 3 offcn root 16 1月 31 16:30 d2

[root@node-1 test]# chown -R offcn:offcn d1

[root@node-1 test]# ll

drwxr-xr-x. 3 offcn offcn 16 1月 31 16:30 d1

-rw-r–r--. 1 offcn offcn 76 1月 31 16:02 test1.txt

[root@node-1 test]# ll d1/

drwxr-xr-x. 3 offcn offcn 16 1月 31 16:30 d2

(5)chgrp

基本语法:

语法功能描述
chgrp + 用户组 + 文件或目录改变文件或目录的所属组

案例:

[root@node-1 test]# ll

-rw-r–r--. 1 offcn offcn 76 1月 31 16:02 test1.txt

[root@node-1 test]# chgrp root test1.txt

[root@node-1 test]# ll

-rw-r–r--. 1 offcn root 76 1月 31 16:02 test1.txt

8、系统监控类

(1)df

基本语法:

语法功能描述
df + [选项]列出文件系统的整体磁盘使用情况 选项: -k :以 KBytes 的容量显示各文件系统(默认); -m :以 MBytes 的容量显示各文件系统; -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示; -T :显示文件系统类型

案例:

[root@node-1 test]# df

文件系统 1K-块 已用 可用 已用% 挂载点

/dev/mapper/centos-root 36805060 5767540 31037520 16% /

devtmpfs 1997092 0 1997092 0% /dev

tmpfs 2014212 0 2014212 0% /dev/shm

tmpfs 2014212 12872 2001340 1% /run

tmpfs 2014212 0 2014212 0% /sys/fs/cgroup

/dev/sda1 1038336 160428 877908 16% /boot

tmpfs 402844 4 402840 1% /run/user/42

tmpfs 402844 56 402788 1% /run/user/0

vmhgfs-fuse 314572796 141786252 172786544 46% /mnt/hgfs

[root@node-1 test]# df -m

文件系统 1M-块 已用 可用 已用% 挂载点

/dev/mapper/centos-root 35943 5633 30311 16% /

devtmpfs 1951 0 1951 0% /dev

tmpfs 1968 0 1968 0% /dev/shm

tmpfs 1968 13 1955 1% /run

tmpfs 1968 0 1968 0% /sys/fs/cgroup

/dev/sda1 1014 157 858 16% /boot

tmpfs 394 1 394 1% /run/user/42

tmpfs 394 1 394 1% /run/user/0

vmhgfs-fuse 307200 138464 168737 46% /mnt/hgfs

[root@node-1 test]# df -h

文件系统 容量 已用 可用 已用% 挂载点

/dev/mapper/centos-root 36G 5.6G 30G 16% /

devtmpfs 2.0G 0 2.0G 0% /dev

tmpfs 2.0G 0 2.0G 0% /dev/shm

tmpfs 2.0G 13M 2.0G 1% /run

tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup

/dev/sda1 1014M 157M 858M 16% /boot

tmpfs 394M 4.0K 394M 1% /run/user/42

tmpfs 394M 56K 394M 1% /run/user/0

vmhgfs-fuse 300G 136G 165G 46% /mnt/hgfs

[root@node-1 test]# df -Th

文件系统 类型 容量 已用 可用 已用% 挂载点

/dev/mapper/centos-root xfs 36G 5.6G 30G 16% /

devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev

tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm

tmpfs tmpfs 2.0G 13M 2.0G 1% /run

tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup

/dev/sda1 xfs 1014M 157M 858M 16% /boot

tmpfs tmpfs 394M 4.0K 394M 1% /run/user/42

tmpfs tmpfs 394M 56K 394M 1% /run/user/0

vmhgfs-fuse fuse.vmhgfs-fuse 300G 136G 165G 46% /mnt/hgfs

(2)du

基本语法:

语法功能描述
du + [选项] + [文件或目录]用于显示目录或文件的大小 选项: -b : 显示目录或文件大小时,以byte为单位; -k :以1KB为单位; -m :以1MB为单位; -h :以K,M,G为单位,提高信息的可读性; -s :仅显示总计

案例:

[root@node-1 ~]# du -b jdk-8u144-linux-x64.tar.gz

185515842 jdk-8u144-linux-x64.tar.gz

[root@node-1 ~]# du -k jdk-8u144-linux-x64.tar.gz

181168 jdk-8u144-linux-x64.tar.gz

[root@node-1 ~]# du -m jdk-8u144-linux-x64.tar.gz

177 jdk-8u144-linux-x64.tar.gz

[root@node-1 ~]# du -h jdk-8u144-linux-x64.tar.gz

177M jdk-8u144-linux-x64.tar.gz

[root@node-1 ~]# du -s jdk-8u144-linux-x64.tar.gz

181168 jdk-8u144-linux-x64.tar.gz

[root@node-1 ~]#

[root@node-1 ~]# du -s -h /home/

5.4M /home/

[root@node-1 ~]# du -s -h /usr/*

142M /usr/bin

0 /usr/etc

0 /usr/games

14M /usr/include

1.2G /usr/lib

1.1G /usr/lib64

110M /usr/libexec

4.0K /usr/local

63M /usr/sbin

1.3G /usr/share

60M /usr/src

0 /usr/tmp

  1. iostat

iostat命令是I/O
statistics(输入/输出统计)的缩写,主要用于监控并统计系统设备的IO负载情况及CPU负载情况,仅对系统的整体情况进行分析,不能对某个进程进行深入分析。主要用它来检查哪个设备有问题,哪个设备io有问题,用户可以通过指定统计的次数和时间来获得所需的统计信息。iostat属于sysstat软件包。可以用yum
install sysstat 直接安装。

基本语法:

语法功能描述
iostat + [选项]用于监控磁盘IO及CPU的负载情况 选项: -d :只显示磁盘使用情况; -c :只显示CPU使用情况; -k :以 KB 为单位显示 -m :以 MB 为单位显示 -t :显示统计的时间 -x :显示详细信息; -N :显示磁盘名称; -p :显示每个磁盘的详细信息,比如sda这个磁盘分了两个区,都要让它显示出来 数字n1 + 数字n2 :每隔n1秒统计一次,共统计n2次

案例:

[root@node-1 test]# iostat

Linux 3.10.0-862.el7.x86_64 (node-1) 2021年02月22日 _x86_64_ (2 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle

1.19 0.01 5.96 0.00 0.00 92.83

Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn

scd0 0.00 0.00 0.00 84 0

sda 0.46 10.85 11.63 2322489 2489371

d

以上是关于02.Linux的基础命令的主要内容,如果未能解决你的问题,请参考以下文章

02.Linux的基础命令

02.Linux的基础命令

02.Linux的基础命令

[Linux基础] 03-基础命令

02-Linux基础入门

02-Linux基础入门