文本文件编辑命令
- cat
cat命令用于查看纯文本文件(内容较少的)
英文全称为“concatenate”, 语法格式为“cat [参数] 文件名称”
cat命令用于查看内容较少的纯文本文件,如果在查看文本内容时还想顺便显示行号的话,不妨在cat命令后面追加一个 n参数
- more
more命令用于查看纯文本文件(内容较多的)
,语法格式为“more [参数] 文件名称”
推荐使用more命令来查看,more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容;还可以使用空格键或回车键向下翻页;
- head
head命令用于查看纯文本文件的前N行
,语法格式为“head [参数] 文件名称”
head -n 10 a.txt
- tail
tail命令用于查看纯文本文件的后N行或持续刷新文件的最新内容,语法格式为“tail [参数] 文件名称”
tail -n 行数 a.txt
tail命令最强悍的功能是能够持续刷新一个文件的内容,当想要实时查看最新的日志文件时,此时的命令格式为“tail -f 文件名称”
tail -f /var/log/message
- tr
tr命令用于替换文本内容中的字符
,英文全称为“translate”,语法格式为“tr [原始字符] [目标字符]”
- wc
wc命令用于统计指定文本文件的行数、字数或字节数
,英文全称为“word counts”,语法格式为“wc [参数] 文件名称”
wc命令中的参数以及作用 | |
---|---|
参数 | 作用 |
-l | 只显示行数 |
-w | 只显示单词数 |
-c | 只显示字节数 |
wc -l /etc/passwd
7. stat
stat命令用于查看文件的具体存储细节和时间等信息
,英文全称为“status”,语法格式为“stat 文件名称”。
Linux系统中的文件包含3种时间状态,分别是Access Time(文件最后一次被访问的时间,简称为Atime),Modify Time(内容最后一次被修改的时间,简称为Mtime)以及Change Time(文件属性最后一次被修改的时间,简称为Ctime)
- grep
grep命令用于按行提取文本内容
,语法格式为“grep [参数] 文件名称”
重点常用的两个参数:
-n参数用于显示搜索到的信息的行号; -v参数用于反选信息(即没有包含关键词的所有信息行)
grep命令中的参数及其作用 | |
---|---|
参数 | 作用 |
-b | 将可执行文件(binary)当作文本文件(text)来搜索 |
-c | 仅显示找到的行数 |
-l | 忽略大小写 |
-n | 显示行号 |
-v | 反向选择——仅列出没有“关键词”的行 |
在Linux系统中,/etc/passwd文件保存着所有的用户信息,而一旦用户的登录终端别设置成/sbin/nologin,则不再允许登录系统,因此可以用使用grep命令查找出当前系统中不允许登录系统的所有用户信息
:
-
cut
cut命令用于按“列” 提取文本内容,语法格式为“cut [参数] 文件名称”
系统文件在保存用户数据信息时,每一项值之间是采用冒号来间隔的 -f参数设置需要查看的列数,-d来设置间隔号
-
diff
diff命令用于比较多个文件之间内容的差异
,英文全称为“different”,语法格式为“dff [参数] 文件名称A 文件名称B”
使用--brief参数来确认两个文件是否相同,还可以使用-c参数来详细比较出多个文件的差异之处,这绝对是判断文件是否被篡改的有力神器
。
-
uniq
uniq命令用于去除文本中连续的重复行
,英文全称为“unique”,语法格式为“uniq [参数] 文件名称”
该命令的作用是用来去除文本文件中连续的重复行,中间不能夹杂其他文本行(非相邻的默认不会去重)——去除了重复的,保留的都是唯一的,自然也就是“独特的” “唯一的”了
。
-
sort
sort命令用于对文本内容进行再排序
,语法格式为“sort [参数] 文件名称”
sort命令中的参数及其作用 | |
---|---|
参数 | 作用 |
-f | 忽略大小写 |
-b | 忽略缩进与空格 |
-n | 以数值型排序 |
-r | 反向排序 |
-u | 去除重复行 |
-t | 指定间隔符 |
-k | 设置字段范围 |
sort -u 与uniq命令不同,sort -u 无论内容行之间是否夹杂有其他内容,只要有一模一样的内容行,立马就可以使用-u参数进行去重操作
:
将/etc/passwd文件中的前五行,然后以第3个字段中数字作为排序依据,可以使用-t参数指定间隔符,用-k参数指定第几列,用-n参数进行数字排序