学习RHEL8第三天-新手必会的命令2系统状态检测、工作目录切换、文本文件编辑、文件目录管理、打包压缩及搜索命令

系统状态检测、工作目录切换、文本文件编辑、文件目录管理、打包压缩及搜索命令
一、 系统状态检测命
1、 ifconfig命令:获取网卡配置与网络状态等信息
[email protected] ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.25.250.100 netmask 255.255.0.0 broadcast 172.25.255.255
inet6 fe80::9805:5299:8fcb:dffa prefixlen 64 scopeid 0x20
ether 00:0c:29:0a:4c:8c txqueuelen 1000 (Ethernet)
RX packets 302 bytes 33614 (32.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 157 bytes 10336 (10.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
查看4个地方:1.ens160:网卡名称;2.inet:172.25.250.100:IP地址;3.ether:网卡的物理地址;4.RXpackets/bytes(接收数据包的个数及累计流量)与TXpackets/bytes(发送数据包的个数及总大小),用于网络异常时查看网络的状态(也可以用iftop)
2、 uname命令,用于查看系统内核命与版本等信息,格式:uname -a
Linux mars.domain250.example.com 4.18.0-80.el8.x86_64 #1 SMP Wed Mar 13 12:02:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
上述信息意思:系统的内核名称linux,主机名mars.dmain250.example.com,内核发行版本4.180-80.el.x86_64,系统打包时间#1 SMP Wed Mar 13 12:02:46 UTC 2019(2019年3月13日12点02分),系统版本x86_64 x86_64 x86_64(X86的64位系统),基于开放的源代码系统GNU.
3、 uptime命令:用于查看系统的负载信息,格式uptime。(静态信息非动态的)
17:44:15 up 2:01, 1 user, load average: 0.00, 0.00, 0.00
负载信息不超过1,超过5服务器就出现问题,会导致应用中断。
4、 free命令:用于显示当前系统中内存的使用信息,格式free -h
[[email protected] ~]# free -h
total used free shared buff/cache available
Mem: 1.9Gi 1.3Gi 96Mi 14Mi 575Mi 492Mi
Swap: 2.0Gi 0.0Ki 2.0Gi
5、 who命令:作用在于当前有那些用户正在登陆这台服务器,格式who
一般用于重启linux 当前系统是查看一下是否还有别人正在使用这台服务器。
6、 last命令:用于查看所有系统的登陆记录,格式last
7、 history命令:用于显示历史执行过的命令,格式history
[[email protected] ~]# history
1 yum repolist all
2 yum list all
3 yum for zlib.x86_64
4 yum check-update
5 yum grouplist
6 ls -
7 ls -a
8 man man
9 echo linux
10 echo $PATH
11 date “+%m”
12 date “+%Y-%m-%d”
13 date “”
14 date
15 date “+%H:%M:%S”
16 timedatectl set-time 21:51
17 date
18 date -s ""20201007 21:52:00
19 date -s “20201007 21:52:10”
20 date
使用history命令查看到历史命令后,前面有一个编号,可以使用格式“!数字”,来执行已经执行过的命令。
重启网卡命令:nmcli connection up ens160/nmcli c reload
清空历史命令信息:history -c
8、 sosreport命令:用于收集系统配置信息及架构信息并输出诊断文档,将收集信息打包,实现第三方的远程协助,格式:sosreport

二、 工作目录切换命令
1、 pwd命令:显示用户当前所在的用户目录,格式:pwd
[[email protected] ~]# pwd
/root
2、 cd命令:用于切换工作路径,格式:cd 目录名称
[[email protected] ~]# cd /etc #切换到/etc目录
[[email protected] etc]# pwd
/etc
cd … #返回到上级目录
cd ~ #切换到家目录
cd ~ 用户名 #切换到该用户的家目录
cd - #返回上一次所在目录
3、 ls命令:用于显示当前目录中的文件信息,格式:ls 参数 文件
ls -l #查看文件的属性,大小详细信息
ls -a #查看全部文件,包含隐藏文件的书香,大小信息,linux中以点号(.)开始的文件都为隐藏文件。
ls -d #查看目录属性信息,目录属性读写执行 wxr
使用Tab键补齐出现重复命令,连续敲击两次Tab键会出现所有包含需要补齐内容的选项
三、 文本你文件编辑命令
1、cat命令:查看纯文本文件(内容较少的文件),格式:cat 参数 文件
cat -n 文件#查看文件的内容,-n同时显示行号
2、more命令: 查看纯文本文件(内容较多的文件),格式:more 参数 文件
more命令可以使用回车或者空格键实现向下翻页。
当你不能判断文件大小,使用more命令来查看就行。
3、head命令:查看纯文本文件的前N行,格式 :head 参数 文件
head -n 20 文件名 #查看选中文件的前20行文本内容。
4、tail命令:查看纯文本文件后N行的或持续刷新的内容,格式:tail 参数 文件。
tail -n 20 文件 #查看当前文件的后20行的文本内容。
tail -f /var/log/message #查看日志信息,实时刷新的信息。
5、命令:用于替换文本文件中的字符,格式:tr 【原始字符】 【目标字符】
tr命令需要管道符“|”配合使用
[[email protected] ~]# cat anaconda-ks.cfg | tr [a-z] [A-Z] #将anaconda-ks.cfg文件中的小写字母都替换成大写字母;这个命令指示将输出到屏幕的文件实现大小写的转换,对原文件不做改动。
#VERSION=RHEL8
IGNOREDISK --ONLY-USE=SDA
AUTOPART --TYPE=LVM

PARTITION CLEARING INFORMATION

CLEARPART --NONE --INITLABEL

USE GRAPHICAL INSTALL

6、wc命令:用于统计指定文本的行数、字数、字节数,格式:wc 参数 文本
wc -l 文本 #只显示文本的行数
wc -w 文本 #只显示文本的单词数
wc -c 文本 #只显示文本的字节数
[[email protected] ~]# wc -lwc /etc/passwd
45 103 2499 /etc/passwd
7、stat命令:用于查看文件具体存储信息和时间的等信息,格式:stat 文件名
[[email protected] ~]# stat anaconda-ks.cfg
File: anaconda-ks.cfg
Size: 1385 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 35314883 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2020-10-14 18:33:40.452370043 +0800 #最后一次查看文件内容的时间 ATime。
Modify: 2020-10-08 01:19:01.285966165 +0800 #最后一次修改文件内容的时间 MTime。
Change: 2020-10-08 01:19:01.285966165 +0800 #最后一次修改文件属性的 时间 CTime。
8、cut命令:用于按“列”提取文本字符,格式:cut 参数 文本
cut -d间隔符 -f列号 文件 #-d参数设置间隔符,-f设置列数
[[email protected] ~]# cut -d: -f1 /etc/passwd #提取/etc/passwd文件的第一列,以:为间隔符提取。
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
dbus
systemd-coredump
systemd-resolve
9、diff命令:比较多个文本文件的差异,格式:diff 参数 文件
diff -c --brief diff_A.txt diff_B.txt #diff –brief(短格式-q)看并对比diff_A.txt diff_B.txt是否有相同,同时使用-c参数列出两个文件的不同之处,每行前面有!代表有差异。

四、 文件目录管理命令
1、touch命令:用于新建空白文件或者设置文件的时间,格式:touch 参数 文件名
touch -a #仅修改“读取时间”ATime
touoch -m #仅修改“修改文件内容的时间”MTime
touch -d #同时修改读取文件时间ATIME与修改文件内容时间MTime
[[email protected] ~]# touch haha #新建文件haha
[[email protected] ~]# ls -l haha #查看haha文件详细信息
-rw-r–r--. 1 root root 0 Oct 14 19:30 haha
[[email protected] ~]# vim haha #编辑haha文件
[[email protected] ~]# ls -l haha #查看haha的详细信息
-rw-r–r--. 1 root root 40 Oct 14 19:31 haha
[[email protected] ~]# touch -d “2020-10-13 19:30” haha #使用touch命令加-d参数同时修改文件最后读取时间及修改时间
[[email protected] ~]# ls -l haha #查看haha详细信息,修改成功
-rw-r–r--. 1 root root 40 Oct 13 19:30 haha
2、mkdir命令:用于新建空白的目录(文件夹),格式:mkdir 参数 目录名称
mkdir Linux1 #创建Linux1目录
mkdir -p /a/s/d/f #递归创建文件目录/a/s/d/f
3、cp命令:用于复制问价或者目录,格式:cp 参数 源文件 目标文件
cp -p #保留原始文件的属性
cp -d #若对象为“链接文件”,则保留该“链接文件”的属性
cp -r #递归持续复制(用于目录)
cp -i #若目标文件存在则询问是否覆盖
cp -a #相当于-pdr(-p,-d,-r)
4、mu命令:用于剪切文件或者同一目录重命名原文件名称,格式:mv 源文件 目标路径 目标文件名称
5、rm命令:用于删除文件或者目录,格式:rm 参数 文件
rm -f 文件名 #强制将文件删除
rm -rf 目录名 #强制删除一个目录
rm -rf / #全局格式化,将硬盘所有文件删除
6、dd命令:用于按照指定大小和个数的数据块来复制文件和转换文件,格式:dd 参数
作用1、按照需求备份文件
dd if=取出的文件名称(原始文件) of=输出的文件名称(新的文件) count=块的个数 bs=块的大小
if #input file of #output file
[[email protected] ~]# dd if=anaconda-ks.cfg of=xiaoyu count=2 bs=1 在anaconda-ks.cfg中取出两个文件块,每块大小1字节,输出到xiaoyu这个文件中。
2+0 records in
2+0 records out
2 bytes copied, 0.000112123 s, 17.8 kB/s
[[email protected] ~]# cat xiaoyu #查看小于这个文件
#v[[email protected] ~]# cat anaconda-ks.cfg #查看原文件
#version=RHEL8
ignoredisk --only-use=sda
autopart --type=lvm

Partition clearing information

clearpart --none --initlabel

Use graphical install

作用2、备份分区表(第一个扇区)
dd if=/dev/sda of=beifenfenqubiao count=1 bs=512
作用3、测试硬盘性能
dd if=/dev/zero of=xiaoyu count=1 bs=1G #轻量级粗略测试硬盘的性能,不是很准确,但是这个测试都无法通过硬盘就存在问题;
dd命令复制文件的一部分,cp命令是全部复制
7、file命令:用于查看文件的类型,格式:file 文件名
五、 打包压缩及搜索命令
1、tar命令:用于对文件进行打包压缩或解压,格式:tar 参数 文件
tar -c #创建压缩文件
tar -z #用Gzip来压缩或者解压 .tar.gz
tar -j #用bzip2的格式压缩或者解压
.tar.bz2
tar -v #显示压缩或者解压的过程
tar -f #目标文件名称
tar -x #解开压缩文件
tar -C #指定解压缩的目录
tar -t #不解压查看压缩包内容
压缩文件命令 tar -czvf 压缩包名称.tar.gz 要打包的目录
解压缩命令 tar -xzvf 压缩包名称.tar.gz -C 指定解压到的目录
2、grep命令:用于关键词刷选并显示搜索结果,格式:grep 参数 关键词 文件名 grep按照行来提取的,cut按列来提取
grep -b #将可执行文件binary当作文本文件text来搜索
grep -c #仅显示找到的行数
grep -i #忽略大小写
grep -n #显示行号
grep -v #反向选择-仅列出没有“关键词”的行
3、find命令:用于按照指定文件来查找文件
find / #全局搜索
find / -name “文件名” #根据文件名称进行搜索
find / -user “用户名” #根据用户名进行搜索
扩展:使用updatedb #生成数据库
/var/lib/mlocate/mlocate.db 数据库存在路径
学习RHEL8第三天-新手必会的命令2系统状态检测、工作目录切换、文本文件编辑、文件目录管理、打包压缩及搜索命令以梦为马,砥砺前行