(1) 文件查看命令: cat,
tac,rev
cat [OPTION]… [FILE]…读取文件内容
–E: 显示行结束符$
–V :显示非打印字符
–n: 对显示出的每一行进行编号
–A:显示所有字符
–b:
非空行编号
–s:将连续的空行变成一行
–T:显示Tab键
tac:倒着显示作用
rev:把echo输入的内容倒着显示出来
<
p align=”left” style=”color:#085160;font-size:24pt”>
(2)分页查看文件内容
v more: 分页查看文件
more [OPTIONS…] FILE…
-d: 显示翻页及退出提示
v less:一页一页地查看文件或STDIN输出
查看时有用的命令包括:
/文本
搜索 文本
n/N 跳到下一个
或 上一个匹配
less 命令是man命令使用的分页器
(3)显示文本前或后行内容
v head 默认前十行
head [OPTION]… [FILE]…
-c #: 指定获取前#字节
-n #: 指定获取前#行 标准输入:
head -n # 文件名
-#:
指定行数
v tail 默认后十行
tail [OPTION]… [FILE]…
-c #: 指定获取后#字节
-n #: 指定获取后#行 标准输入:
tail -n # 文件名
-f: 跟踪显示文件新追加的内容,常用日志监控Ctrl+c终止运行退出
默认显示后十个的日志监控,tail –n o –f 文件名则显示最后一个
练习:显示/etc/passwd文件的第11行至第20行
head –n 20 /etc/passwd |tail
(4)按列抽取文本cut和合并文件paste
v cut [OPTION]… [FILE]…
-d : 指明分隔符,默认tab
–f :选取第几列
#,#[,#]:离散的多个字段,例如1,3,6选取第a,b,…..列
#–#:连续的多个字段, 例如1–6选取a至b列
混合使用: 1–3,7
–output-delimiter=STRING指定输出分隔符
–c 按字符切割适合内容格式规整的文件
练习:查出app分区的磁盘使用量
df|tr –s [[:space:]]|head –n 4|tail –n 1|cut –d ‘ ‘ –f5|cut –d ‘%’ –f1
df|tr -s ” “%|head -n 4|tail -n 1|cut -d% -f5
df |head -n 4 |tail -n 1 |cut -c 44-46(最后一个命令是依靠切割字符
(5)cut和paste
v 显示文件或STDIN数据的指定列
cut –d: –f1 /etc/passwd
cat /etc/passwd | cut -d: -f7
cut -c2-5 /usr/share/dict/words
v paste 合并两个文件同行号的列到一行
paste [OPTION]… [FILE]…paste f1 f2
-d 分隔符:指定分隔符,默认用TAB paste -d 指定的分隔符 文件1 文件2
-s : 所有行合成一行显示 paste –s f1 f2
补充:cat 合并多个文件(不足:一个文件显示一行)
练习:显示当前主机第一个网卡的IP地址
ifconfig
|head –n 2| tail –n 1| tr –s ‘ ‘ : |cut –d: –f4
6)分析文本的工具
v 文本数据统计: wc
v 整理文本: sort
v 比较文件: diff和patch
7)收集文本统计数据wc
v计数单词总数、行总数、字节总数和字符总数
v可以对文件或STDIN中的数据运行
$ wc story.txt
39 237 1901 story.txt
行数 单词数
字节数
wc -l 来只计数行数
wc -w 来只计数单词总数
wc -c 来只计数字节总数
wc -m 来只计数字符总数
8)文本排序sort
v把整理过的文本显示在STDOUT,不改变原始文件
$ sort [options] file(s)
v常用选项
Ü -r 执行反方向(由上至下)整理
Ü -n 执行按数字大小整理
Ü -f 选项忽略(fold)字符串中的字符大小写
–u 选项(独特, unique)删除输出中的重复行
–t c 选项使用c做为字段界定符
Ü -k X 选项按照使用c字符分隔的X列来整理能够使用多次
9)uniq
v uniq命令:去除连续重复行
v uniq [OPTION]… [FILE]…
-c: 显示每行重复出现的次数
–d: 仅显示重复过的行
–u: 仅显示不曾重复的行
v 常和sort 命令一起配合使用:去除非重复的连续行
sort userlist.txt | uniq –c
10)比较文件
diff 命令 比较两个文件之间的区别
11)复制对文件改变patch
v diff -u 适用于生成补丁文件。
v patch -b 选项来自动备份改变了的文件
练习:f1 f2两个文件中删除f2后利用补丁文件还原f2文件
diff –u f1 f2 > diff.log 生成补丁
mv f2
f2.rm 相当于删除了文件。
patch –b f1 diff.log 通过补丁还原文件
mv f1
f2 还原原始的新文件名
mv
f1.orig f1 还原原始的旧文件名
diff
f2 f2.rm 比较还原回来的新文件与被删除的文件,发现没有区别
原创文章,作者:lss,如若转载,请注明出处:http://www.178linux.com/83127