文本处理工具

来源:互联网 发布:win pe 知乎 编辑:程序博客网 时间:2024/05/21 18:47

cat [OPTION]… [FILE]…
-E: 显示行结束符$
-n: 对显示出的每一行进行编号,包括空行
-A :显示所有控制符
-b: : 对非空行编号
-s :压缩连续的空行成一行

tac
用法:tac [选项]… [文件]…
将每个指定文件按行倒置并写到标准输出。
如果不指定文件,或文件为”-“,则从标准输入读取数据。
长选项必须使用的参数对于短选项时也是必需使用的。
  -b, –before                  在行前而非行尾添加分隔标志
  -r, –regex                   将分隔标志视作正则表达式来解析
  -s, –separator=字符串        使用指定字符串代替换行作为分隔标志
      –help            显示此帮助信息并退出
      –version         显示版本信息并退出

rev
rev 显示最后一个字符显示到第一个字符。
参数:无

分页查看文件内容
 more: 分页查看文件
more [OPTIONS…] FILE…
-d: 显示翻页及退出提示
 less :一页一页地查看文件或STDIN 输出
查看时有用的命令包括:
/本 文本 搜索 文本
n/N 跳到下一个 个 或 或 上 一个匹配
less 命令是man命令使用的分页器

显示文本前或后行内容
 head
head [OPTION]… [FILE]…
-c #: 指定获取前# 字节
-n #: 指定获取前#行 行
-#: : 指定行数
 tail
tail [OPTION]… [FILE]…
-c #: 指定获取后# 字节
-n #: 指定获取后#行 行
-#: :
-f: 跟踪显示文件新追加的内容,常用日志监控

cut [OPTION]… [FILE]…
-d DELIMITER: 指明分隔符,默认tab
-f FILEDS:

: 第# 个字段

,#[,#] :离散的多个字段,例如1,3,6

-# :连续的多个字段, 例如1-6

混合使用:1-3,7
-c 按字符切割
–output-delimiter=STRING指定输出分隔符

显示文件或STDIN 数据的指定列
cut -d: -f1 /etc/passwd
cat /etc/passwd | cut -d: -f7
cut -c2-5 /usr/share/dict/words
 paste 合并两个文件同行号的列到一行
paste [OPTION]… [FILE]…
-d 分隔符: 指定分隔符,默认用TAB
-s : 所有行合成一行显示
paste f1 f2
paste -s f1 f2

收集文本统计数据wc
 计数单词总数、行总数、字节总数和字符总数
 可以对文件或STDIN 中的数据运行
$ wc story.txt
39 237 1901 story.txt
行数 字数 字符数
 使用 -l 来只计数行数
 使用 -w 来只计数单词总数
 使用 -c 来只计数字节总数
 使用 -m 来只计数字符总数

文本排序sort
 把整理过的文本显示在STDOUT ,不改变原始文件
$ sort [options] file(s)
 常用选项
 -r 执行反方向(由上至下)整理
 -n 执行按数字大小整理
 -f 选项忽略(fold )字符串中的字符大小写
 -u 选项(独特,unique )删除输出中的重复行
 -t c 选项使用c 做为字段界定符
 -k X 选项按照使用c 字符分隔的X 列来整理能够使用多次

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

比较文件
 比较两个文件之间的区别
$ diff foo.conf-broken foo.conf-works
5c5

< use_widgets = no

use_widgets = yes
 注明第5 行有区别(改变)

复制对文件改变patch
 diff 命令的输出被保存在一种叫做“补丁”的文件中
 使用 -u 选项来输出“统一的(unified )”diff 格式文
件,最适用于补丁文件。
 patch 复制在其它文件中进行的改变(要谨慎使用)
 适用 -b 选项来自动备份改变了的文件
diffufoo.confbrokenfoo.confworks>foo.patch patch -b foo.conf-broken foo.patch

1 、找出ifconfig 命令结果中本机的IPv4 地址
 2 、查出分区空间使用率的最大百分比值
 3 、查出用户UID 最大值的用户名、UID 及shell 类型
 4 、查出/tmp 的权限,以数字方式显示
 5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大
到小排序

0 0
原创粉丝点击