按列抽取文本cut和合并文件paste
cut [OPTION]... [FILE]...
-d DELIMITER: 指明分隔符,默认tab(分隔符只能是单个字符)
-f FILEDS:
#: 第#个字段
#,#[,#]:离散的多个字段,例如1,3,6
#-#:连续的多个字段, 例如1-6
混合使用:1-3,7
-c按字符切割
--output-delimiter=STRING指定输出分隔符
查看分区利用率:df |tr -s " " % |cut -d% -f5
提取P地址:ifconfig eth0|head -n2 |tail -n1|tr -s " " : |cut -d: -f4
paste 合并两个文件同行号的列到一行
paste [OPTION]... [FILE]...
-d 分隔符:指定分隔符,默认用TAB
-s : 所有行合成一行显示
paste f1 f2
paste -s f1 f2
分析文本的工具
文本数据统计:wc
wc[OPTION]... [FILE]... 默认显示文件行数,单词数,字节数,文件名
-c:统计文件字节数
-l:统计文件行数
-w:统计文件单词数
-m:统计文件字符
整理文本:sort
把整理过的文本显示在STDOUT,不改变原始文件
sort[options]file(s)
常用选项
-r执行反方向(由上至下)整理
-n执行按数字大小整理
-f选项忽略(fold)字符串中的字符大小写
-u选项(独特,unique)删除输出中的重复行
-t c选项使用c做为字段界定符(指定列的分隔符)
-k X选项按照使用c字符分隔的X列来整理能够使用多次(指定第几列)
对/etc/passwd 取用户名和UID,并对UID倒序排序
cut -d: -f1,3 /etc/passwd|sort -t: -k2 -nr
取分区利用率最大值
df |tr -s " " %|cut -d% -f5|sort -n|tail -n1 空间
df -i |tr -s " " %|cut -d% -f5|sort -n|tail -n1 节点
uniq命令:从输入中删除前后相接的重复的行
uniq[OPTION]... [FILE]...
-c: 显示每行重复出现的次数
-d: 仅显示重复过的行
-u: 仅显示不曾重复的行
连续且完全相同方为重复
常和sort 命令一起配合使用:
sort userlist.txt | uniq-c
比较文件
比较两个文件之间的区别
difffoo.conf-brokenfoo.conf-works
5c5
use_widgets=no
................
use_widgets=yes
注明第5行有区别(改变)
diff命令的输出被保存在一种叫做“补丁”的文件中
使用-u选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件。
patch复制在其它文件中进行的改变(要谨慎使用)
适用-b选项来自动备份改变了的文件
diff-ufoo.conf-brokenfoo.conf-works>foo.patch
patch-bfoo.conf-brokenfoo.patch
以数字的形式体现文件权限
stat -c %a /tmp