当前位置:网站首页>RHCSA--文件内容浏览、cut、uniq、sort、.tr命令使用
RHCSA--文件内容浏览、cut、uniq、sort、.tr命令使用
2022-07-23 05:47:00 【.98℃】
目录
1.文件内容浏览
1.cat命令
- 命令格式:cat [选项] 文件名列表
- 说明:文件名可使用通配符
常用选项:
-n——对输出内容中的所有行标注行号。
-b——对输出内容中的非空行标注行号。
cat查看/etc/passwd文件内容,且输出时带行号
[[email protected] ~]# cat -n /etc/passwd[[email protected] ~]# cat -n /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10 operator:x:11:0:operator:/root:/sbin/nologin
11 games:x:12:100:games:/usr/games:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13 nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
14 dbus:x:81:81:System message bus:/:/sbin/nologin
15 systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
16 systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
17 tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
18 polkitd:x:998:996:User for polkitd:/:/sbin/nologin
19 geoclue:x:997:995:User for geoclue:/var/lib/geoclue:/sbin/nologin
20 rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
21 pipewire:x:996:992:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin
22 pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
23 qemu:x:107:107:qemu user:/:/sbin/nologin
24 clevis:x:995:989:Clevis Decryption Framework unprivileged user:/var/cache/clevis:/sbin/nologin
25 usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
26 unbound:x:994:988:Unbound DNS resolver:/etc/unbound:/sbin/nologin
27 gluster:x:993:987:GlusterFS daemons:/run/gluster:/sbin/nologin
28 rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
29 avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
30 chrony:x:992:986::/var/lib/chrony:/sbin/nologin
31 setroubleshoot:x:991:984::/var/lib/setroubleshoot:/sbin/nologin
32 saslauth:x:990:76:Saslauthd user:/run/saslauthd:/sbin/nologin
33 libstoragemgmt:x:989:983:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
34 dnsmasq:x:981:981:Dnsmasq DHCP and DNS server:/var/lib/dnsmasq:/sbin/nologin
35 radvd:x:75:75:radvd user:/:/sbin/nologin
36 sssd:x:980:980:User for sssd:/:/sbin/nologin
37 cockpit-ws:x:979:979:User for cockpit web service:/nonexisting:/sbin/nologin
38 cockpit-wsinstance:x:978:978:User for cockpit-ws instances:/nonexisting:/sbin/nologin
39 flatpak:x:977:977:User for flatpak system helper:/:/sbin/nologin
40 colord:x:976:976:User for colord:/var/lib/colord:/sbin/nologin
41 rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
42 gdm:x:42:42::/var/lib/gdm:/sbin/nologin
43 gnome-initial-setup:x:975:975::/run/gnome-initial-setup/:/sbin/nologin
44 tcpdump:x:72:72::/:/sbin/nologin
45 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
46 rhcsa:x:1000:1000:rhcsa:/home/rhcsa:/bin/bash
2.more和less命令
作用:分页查看文件内容
命令格式: more / less [选项] 文件名
常用选项:
+n ——指定从文件的第n行开始显示。
-c ——从顶部清屏然后显示文件内容。-数字 ——仅适用于more命令,用来指定分页显示时每页的行数。
-N ——仅适用于less命令,其作用是在每行前添加输出行号。
交互操作方法:
- 按 Enter键 向下逐行滚动
- 按 空格键 向下翻一屏、按b键向上翻一屏
- 文件末尾时more会自动退出,less 按q键退出
使用more/less查看/etc/passwd内容,且每页显示10行
[[email protected] ~]# more -10 /etc/passwd
结果:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
10
3.head和tail命令
作用:查看文件开头或末尾的部分内容
命令:head / tail [选项] 文件名
常用选项有:
-num ——指定需要显示文件多少行的内容,若不指定,默认只显示十行。
-f ——使tail不停地去读取和显示文件最新的内容, 以监视文件内容的变化。这样有实时监视的效果。
tail 命令更多的用于查看系统日志文件,以便于观察重要的系统消息,特别是结合使用-f选项,tail会自动实时地把打开文件中的新消息显示到屏幕上,从而跟踪日志文件末尾的内容变化,直至按【Ctrl+C】键终止显示和跟踪。
使用head/tail分别查看文件前5行内容和后5行内容
[[email protected] ~]# head -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[[email protected] ~]# tail -5 /etc/passwd
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:975:975::/run/gnome-initial-setup/:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rhcsa:x:1000:1000:rhcsa:/home/rhcsa:/bin/bash
4.grep命令
作用:检索、过滤文件内容,在指定的文件中查找并显示含有指定字符串的行。
格式:grep [选项] 要查找的字符串、条件表达式或被查找的文件名
选项:
-i ——查找时忽略大小写
-v ——反转查找,输出与查找条件不相符的行
在grep命令中,可以直接指定关键字串作为查找条件,也可以使用复杂的条件表达式,例如:字符“^” 表示行的开始;^read:表示以read开始。“$” 表示行的结尾;read$:表示以read结束。
^$:表示空行。
如果查找的字符串中带有空格,可以用单引号或双引号括起来。
使用grep查看/etc/passwd中和root相关的内容
[[email protected] ~]# cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
2.cut命令使用:
cut是一个选取命令,就是将一段数据经过分析(针对行),取出我们想要的。
其语法格式为:cut OPTION... [FILE]...使用说明:
- cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。
- 如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。
主要参数:
-b —以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c —以字符为单位进行分割。
-d —自定义分隔符,默认为制表符。
-f —与-d一起使用,指定显示哪个区域。
-n —取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的<br />范围之内,该字符将被写出;否则,该字符将被排除。
给定文件cut_data.txt且内容为:
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
[[email protected] data]# cat cut_data.txt
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
使用默认定界符切割文件内容,且输出切割后的第一个字段
[[email protected] data]# cut -d " " cut_data.txt -f1
No
1
2
3
4
切割文件内容,且输出切割后的第一个字段和第三个字段
[[email protected] data]# cut -d " " cut_data.txt -f1,3
No Score
1 20
2 80
3 90
4 60
按字节切割:输出切割的第一个字节到第10个字节的内容
[[email protected] data]# cut -b 1-10 cut_data.txt
No Name Sc
1 zhang 20
2 li 80
3 wang 90
4 sun 60
按字符切割:输出切割后的第一个字符和第5个字符的内容
[[email protected] data]# cut -c 1,5 cut_data.txt
Na
1a
2
3n
4n
按指定分界符去切割:内容如下, 输出第一个字段和第三个字段内容
No|Name|Score
1|zhang|20
2|li|80
3|wang|90
4|sun|60
[[email protected] data]# cat cut_data.txt
No|Name|Score
1|zhang|20
2|li|80
3|wang|90
4|sun|60
[[email protected] data]# cut -d "|" cut_data.txt -f1,3
No|Score
1|20
2|80
3|90
4|60
3.uniq命令使用:
uniq命令用于去除文本中连续的重复行,该命令的作用是用来去除文本文件中连续的重复行,中间不能夹杂其他文本行
语法格式为:uniq [参数] 文件名称
option: -c:在数据行前出现的次数 -d:只打印重复的行,重复的行只显示一次 -D:只打印重复的行,重复的行出现多少次就显示多少次 -f:忽略行首的几个字段 -i:忽略大小写 -s:忽略行首的几个字母 -u:只打印唯一的行 -w:比较不超过n个字母
新建文件uniq_data.txt,文件内容为
Welcome to Linux
Windows
Windows
Mac
Mac
Linux
[[email protected] data]# cat uniq_data.txt
Welcome to Linux
Windows
Windows
Mac
Mac
Linux
使用uniq命令输出去重后的结果
[[email protected] data]# uniq uniq_data.txt
Welcome to Linux
Windows
Mac
Linux
使用uniq命令只输出重复的行
[[email protected] data]# uniq -d uniq_data.txt
Windows
Mac使用uniq命令输出不重复的行
[[email protected] data]# uniq -u uniq_data.txt
Welcome to Linux
Linux
使用uniq命令统计重复次数
[[email protected] data]# uniq -c uniq_data.txt
1 Welcome to Linux
2 Windows
2 Mac
1 Linux
4.sort命令:
sort命令用于对文本内容进行再排序
语法格式为:sort [参数] 文件名称
参数及其作用:-f ----忽略大小写
-b ----忽略缩进与空格
-n ----以数值型排序
-r ----反向排序
-u ----去除重复行
-t ----指定间隔符
-k ----设置字段范围-o ----将排序结果写入文件中
给定文件 num.txt, args.txt
文件内容:num.txt
1
3
5
2
4
[[email protected] data]# cat num.txt
1
3
5
2
4
文件内容:args.txt
test
args1
args2
args4
args4
args3
[[email protected] data]# cat args.txt
test
args1
args2
args4
args4
args3
对num.txt进行排序,且将结果输出到sorted_num.txt中
[[email protected] data]# cat num.txt | sort -o sorted_num.txt
[[email protected] data]# cat sorted_num.txt
1
2
3
4
5
对args.txt进行排序,且将结果输出到sorted_args.txt中
[[email protected] data]# cat args.txt | sort -o sorted_args.txt
[[email protected] data]# cat sorted_args.txt
args1
args2
args3
args4
args4
test
对num.txt和args.txt进行排序,且将结果输出到sorted_merge.txt中
[[email protected] data]# cat args.txt num.txt | sort -o sorted_merge.txt
[[email protected] data]# cat sorted_merge.txt
1
2
3
4
5
args1
args2
args3
args4
args4
test
对args.txt排序后去重输出
[[email protected] data]# cat args.txt | sort -u
args1
args2
args3
args4
test合并sorted_args.txt和sorted_num.txt且输出
[[email protected] data]# cat sorted_args.txt >>sorted_num.txt
[[email protected] data]# cat sorted_num.txt
1
2
3
4
5
args1
args2
args3
args4
args4
test
给定文件info_txt:按第二列作为key进行排序
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60
[[email protected] data]# sort info_txt -k2
2 li 80
No Name Score
4 sun 60
3 wang 90
1 zhang 20
5.tr
功能:转换或删除字符。
用法:tr [OPTION]... SET1 [SET2]
选项:
-c -C, --complement 用 SET2 替换 SET1 中没有包括的字符
-d --delete 删除 SET1 中的字符
-s --squeeze-repeats 压缩 SET1 中重复的字符
-t --truncate-set1 将 SET1 截成与 SET2 一样的长度
--help 帮助文档
--version 版本信息
将26个小写字母的后13个字母替换成大写字母
[[email protected] data]# cat tr.txt | tr "n-z" "N-Z"
abcdefghijklmNOPQRSTUVWXYZ
将hello 123 world 456中的数字替换成空字符
[[email protected] data]# vim tr.txt1
[[email protected] data]# cat tr.txt1 | tr "1-9" " "
hello world 将hello 123 world 456中字母和空格替换掉,只保留数字
[[email protected] data]# cat tr.txt1 | tr -d " a-zA-Z"
123456
边栏推荐
- DHCP principle and configuration
- Learning diary - (routing and switching technology) network address translation NAT Technology
- ACL configuration instance learning record
- FTP 配置实例学习记录
- Briefly describe the similarities and differences between raft and Paxos in design
- Reading Phoenix Architecture - History and knowledge of RPC
- openvpn部署
- SQL server performance analysis, view slow queries
- yum安装LNMP服务部署
- 学习日记——(路由与交换技术)OSPF协议
猜你喜欢

FTP实验及概述

Unity3d: script execution sequence on scene loading gameobejct

OSPF comprehensive experiment in hcip-mgre environment

Unity3d+moba+ skill indicator (II)

ACL 配置实例学习记录

OSPF 多区域配置实例学习记录

Eth trunk configuration instance learning record

Static route configuration instance learning record

路由与交换技术——静态路由

踩坑electron渲染进程renderer,解决require is not defined的问题
随机推荐
2020-10-16
平方根立方根
Simple use of psutil monitoring
DHCP second experiment
Query the cross compiled executable dependency Library
C#输出斐波那契数列
查询交叉编译出的可执行文件依赖库
【无标题】
[Reading Notes "Phoenix architecture" - a large-scale distributed system with reliable architecture. Zhou Zhiming] (I)
C output Fibonacci sequence
2020-09-20
0 backtracking / dynamic programming medium leetcode526. Beautiful arrangement
C#随机生成一个分数,判断其成绩等级(优、良、中、差、不及格)
在二叉排序树中删除节点
@Requiredargsconstructor annotation use
单臂路由配置实例学习记录
Unity used trilib plug-in under URP pipeline to load model material incorrectly
Vmware虚拟机和主机之间复制、粘贴内容、拖拽文件
Homework of the fifth week
学习日记——(路由与交换技术)OSPF协议