满堂花醉三千客,一剑霜寒十四洲。这篇文章主要讲述《LinuxProbe》—RHCE 学习 Day6-8相关的知识,希望能为你提供帮助。
第二章 Linux 常用命令-文本文件编辑命令
1、cat命令 (查看内容较少的文本文件)格式:cat [参数] 文件名称
-n 显示行号
[root@linuxprobe ~]# cat -n initial-setup-ks.cfg
1#version=RHEL8
2# X Window System configuration information
3xconfig--startxonboot
4# License agreement
5eula --agreed
6# Use graphical install
...........
2、more命令 (查看内容较多的文本文件)格式:more [参数] 文件名称
注意:执行more命令后,‘回车键’跳1行,‘空格键’跳1屏。
3、head命令 (查看文本文件的前N行) 格式:head [参数] 文件名称
参数 | 作用 |
-n | 指定显示前多少行。 |
4、tail命令 (查看文本文件后N行)格式:tail [参数] 文件名称
参数 | 作用 |
-n | 指定显示后多少行。 |
-f | 持续刷新指定文件 |
5、tr命令 (替换文本文件内容中的字符)格式:tr [原字符] [目标字符]
示例:把anaconda-ks.cfg内容中的英文全部替换为大写
cat anaconda-ks.cfg | tr [a-z] [A-Z]
6、wc命令
统计指定文本文件的行数、字数或字节数,语法格式为“wc [参数] 文件名称”。
wc命令中的参数以及作用
参数 | 作用 |
-l | 只显示行数 |
-w | 只显示单词数 |
-c | 只显示字节数 |
7、stat命令
查看文件的具体存储细节和时间等信息,语法格式为“stat文件名称”。
[root@linuxprobe ~]# stat anaconda-ks.cfg
File: anaconda-ks.cfg
Size: 1407Blocks: 8IO Block: 4096regular file
Device: fd00h/64768dInode: 35321091Links: 1
Access: (0600/-rw-------)Uid: (0/root)Gid: (0/root)
Context: system_u:object_r:admin_home_t:s0
Access: 2020-07-21 05:16:52.347279499 +0800
Modify: 2020-07-21 05:09:16.421009316 +0800
Change: 2020-07-21 05:09:16.421009316 +0800
Birth: -
文件时间 | 作用 |
Atime(Access Time) | 内容最后一次被访问的时间 |
Mtime(Modify Time) | 内容最后一次被修改的时间 |
Ctime(Change Time) | 文件属性最后一次被修改的时间 |
(1)Ctime系统自动锁定,不可手动修改。
(2)修改文件后,Mtime和Ctime会同时修改。
文件大小也是文件属性,对文件修改、保存都会同时改变Mtime和Ctime。
8、grep命令
grep命令用于按行提取文本内容,语法格式为“grep [参数] 文件名称”。
grep 要搜索的信息 待搜索的文件
grep命令中的参数及其作用
参数 | 作用 | 备注 |
-b | 将可执行文件(binary)当作文本文件(text)来搜索 | |
-c | 仅显示找到的行数 | |
-i | 忽略大小写 | |
-n | 显示行号 | 常用 |
-v | 反向选择——仅列出没有“关键词”的行。 | 常用 |
提示:/etc/passwd文件中存着所有的用户信息,每1行代表1个用户;而一旦用户的登录终端被设置成/sbin/nologin,则不再允许登录系统
grep /sbin/nologin /etc/passwd
9、cut命令
按“列”提取文本内容,语法格式为“cut [参数] 文件名称”。
参数 | 作用 |
-d | 设置间隔符 |
-f | 设置要查看的列数 |
提示:系统文件(/etc/passwd)在保存用户数据信息时,每一项值之间是采用冒号来间隔的。(如:root:x:0:0:root:/root:/bin/bash )
提取出passwd用户名信息,即提取以冒号(:)为间隔符号的第一列内容
cut -d : -f 1 /etc/passwd
10、diff命令
比较多个文件间内容的差异,语法格式为“diff [参数] 文件名称A 文件名称B”。
参数 | 作用 |
--brief | 判断文件是否相同 |
-c | 列出多个文件的差异之处 |
除文本中连续的重复行(非相邻的不会去重),语法格式为“uniq [参数] 文件名称”。
12、sort命令
对文本内容进行再排序,语法格式为“sort [参数] 文件名称”。
sort命令中的参数及其作用
参数 | 作用 |
-f | 忽略大小写 |
-b | 忽略缩进与空格 |
-n | 以数值型排序 |
-r | 反向排序 |
-u | 去除重复行 |
-t | 指定间隔符 |
-k | 设置字段范围 |
与uniq命令不同,sort命令是无论内容行之间是否夹杂有其他内容,只要有两个一模一样的内容行,立马就可以使用-u参数进行去重操作:
[root@linuxprobe ~]# cat sort.txt
Welcome to linuxprobe.com
Red Hat certified
Welcome to linuxprobe.com
Free Linux Lessons
Linux Course
[root@linuxprobe ~]# sort -u sort.txt
Free Linux Lessons
Linux Course
Red Hat certified
Welcome to linuxprobe.com
示例:对 usre.txt文件中的第3个字段中的数字作为排序依据进行排序
sort -t : -k 3 -n user.txt
【《LinuxProbe》—RHCE 学习 Day6-8】
推荐阅读
- MYSQL随笔九 binlog日志清理
- 如何使用Angular和Bootstrap打开弹出窗口()
- 如何从给定的字符串中删除标点符号()
- 如何使用JavaScript将时间四舍五入到最近的四分之一小时()
- Go中的数据类型介绍和用法指南
- Python如何使用Kivy中的AnchorLayout(布局示例)
- 在Python中如何将列表分成大小为N的块()
- 算法题(鸡蛋掉落难题(二项式系数和二叉搜索解决方案))
- AngularJS如何使用angular.isDate()函数(代码实例)