分析文本的工具:wc,sort,uniq,diff和patch 文本数据统计:wc 整理文本:sort 比较文件:diff和patch wc:计数单词总数、行总数、字节总数和字符总数 sort把整理过的文本显示在STDOUT,不改变原始文件 uniq命令:从输入中删除前后相接的重复的行 diff:比较两个文件之间的区别(vim -d:https://www.cnblogs.com/lqynkdcwy/p/9321698.html) patch 复制在其它文件中进行的改变(要谨慎使用)

整理文本:sort

比较文件:diff和patch

wc:计数单词总数、行总数、字节总数和字符总数

可以对文件或STDIN中的数据运行
wc story.txt
39 237 1901 story.txt
行数 字数 字节数
.常用选项(默认:l w c)
.-l 只计数行数
.-w 只计数单词总数
.-c 只计数字节总数
.-m 只计数字符总数
.-L 显示文件中最长行的长度
UTF-8编码:
  一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。
  Unicode编码:
  一个英文等于两个字节,一个中文(含繁体)等于两个字节

sort把整理过的文本显示在STDOUT,不改变原始文件

sort [options] file(s)
.常用选项
.-r 执行反方向(由上至下)整理
.-R 随机排序
.-n 执行按数字大小整理
.-f 选项忽略(fold)字符串中的字符大小写
.-u 选项(独特,unique)删除输出中的重复行
.-t c 选项使用c做为字段界定符
.-k X 选项按照使用c字符分隔的X列来整理能够使用多次

uniq命令:从输入中删除前后相接的重复的行

uniq [OPTION]... [FILE]...
-c: 显示每行重复出现的次数
-d: 仅显示重复过的行
-u: 仅显示不曾重复的行
注:连续且完全相同方为重复
.常和sort 命令一起配合使用:
sort userlist.txt | uniq -c

diff:比较两个文件之间的区别(vim -d:https://www.cnblogs.com/lqynkdcwy/p/9321698.html)

diff firstfilename secondfilename
5c5
< use_widgets = no


use_widgets = yes
.注明第5行有区别(改变)
diff 命令的输出被保存在一种叫做“补丁”的文件中
使用 -u 选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件

patch 复制在其它文件中进行的改变(要谨慎使用)

适用 -b 选项来自动备份改变了的文件
$ diff -u foo.conf foo2.conf > foo.patch
$ patch -b foo.conf foo.patch