Linux 第七天: (08月05日) Linux文本处理工具

Linux 第七天: (08月05日) 文本处理工具

 

 

 

head -n 指定货权前n行
tail -n 指定获取后n行
tail -f 显示文件新追加内容

tail -n 0 -f /var/log/messages & 后台监控日志

cut -d 指明分隔符,默认tab
cut -f 第几个字段
cut -c 按字符切割

paste -d 指定分隔符 file1 file2
paste -s 所有行合成一行显示

wc -l 统计行数
wc -w 统计单词数
wc -c 统计字节数
wc -m 统计字符数

sort -r 反向排序
sort -n 按数排序
sort -f 忽略大小写
sort -u 删除重复行
sort -t c 以c作为字段界定符
sort -k X

uniq -c 统计每行重复出现次数
uniq -d 统计重复的行
uniq -u 统计不重复的行

paste -d 指定分隔符 file1 file2
paste -s 所有行合成一行显示

diff file1 file2 比较两文件区别
diff -u file1 file2 > file3.patch
patch -b file1 file2 自动备份改变的文件

grep: Global search REgular expression and Print out the line
grep "$USER" /etc/passwd
grep '$USER' /etc/passwd
grep `whoami` /etc/passwd
grep –color=auot 对匹配的文本着色显示
grep -v 显示不能被匹配的行
grep -i 忽略大小写
grep -n 显示行号
grep -c 统计行数
grep -o 仅显示匹配的字符串
grep -q 静默, 不输出信息
grep -A n 后n行
grep -B n 前n行
grep -C n 前后各n行
grep -e COMM1 -e COMM2 多个之间or关系
grep -w 匹配整个单词
grep -E 使用ERE

 

REGEXP 基本正则表达式 BRE
REGEXP 扩展正则表达式 ERE, grep -E, egrep

字符匹配
.   匹配任意单个字符
[]  匹配指定范围内的任意单个字符
[^] 匹配指定范围外的任意单个字符
元字符
[:digit:] 所有数字
[:lower:] 所有小写字母
[:upper:] 所有大写字母
[:alpha:] 所有字母
[:alnum:] 所有字母数字
[:punct:] 所有标点符号
[:space:] 空格和tab

匹配次数
* 匹配前面字符任意次数, 包括0次
.* 任意长度的任意字符
\? 匹配前面字符0或1次
\+ 匹配前面字符至少1次
\{n\} 匹配前面字符n次
\{m,n\} 匹配前面字符至少m次,至多n次
\{,n\} 匹配前面字符至多n次
\{n,\} 匹配前面字符至少n次

位置锚定
^ 行首锚定, 用户模式最左侧
& 行尾锚定, 用于模式最右侧
^  $ 用于模式匹配整行
^& 空行
^[[:space:]]*$ 空白行
\<或\b 词首锚定 用于单词模式的左侧
\>或\b 词尾锚定 用于单词模式的右侧
\< \> 匹配整个单词

分组
\( \)

egrep及扩展到正则表达式

字符匹配
egrep = grep -E
. 任意单个字符
[]指定范围的字符
[^] 不在指定范围的字符

次数匹配
* 匹配前面字符任意次数
? 匹配前面字符0或1次
{m} 匹配m次
{m,n} 至少m次, 至多n次

 

扩展正则表达式

位置锚定
^ 行首
$ 行尾
\< \b 语首
\> \b 语尾

分组
()
\1 \2 后向引用

C|cat   C或cat
(C|c)at Cat或cat

 

 

 

原创文章,作者:dengjian,如若转载,请注明出处:http://www.178linux.com/30891

(0)
dengjiandengjian
上一篇 2016-08-08 09:22
下一篇 2016-08-08 09:22

相关推荐

  • OpenSSL 的使用

    OpenSSL 是一个开源项目,其组成主要包括一下三个组件:     openssl:多用途的命令行工具     libcrypto:加密算法库     libssl:加密模块应用库,实现了ssl及tls openssl可以实现:秘钥证书管…

    Linux干货 2017-06-07
  • CentOS 7上的性能监控工具

    Linux中基于命令行的性能监控工具:dstat、top、netstat、vmstat、htop、ss、glances 1、dstat – 多类型资源统计工具(需配置epel源)   该命令整合了vmstat,iostat和ifstat三种命令。同时增加了新的特性和功能可以让你能及时看到各种的资源使用情况,从而能够使你对比和整…

    Linux干货 2016-09-07
  • 路由器解析路由表

    1.定义——>选择最佳路径;他只完成发送到下一个路径上就结束,任务到达就撤了(就像快递员一样,当他将物件发往到下一个目的地,那他的任务就结束了)2.分类:主机路由、网络路由、默认路由3.每个路由记录由四项主要组成部分目标地址:主机IP、网络ID号、未知地址(0.0.0.0)子网掩码接口interface:从哪个口发往目标地址 网…

    2017-09-05
  • Centos7上安装Ansible和基础应用

    Ansible 简介 ansible是个什么东西呢?官方的title是“Ansible is Simple IT Automation”——简单的自动化IT工具。这个工具的目标有这么几项:自动化部署APP;自动化管理配置项;自动化的持续交互;自动化的(AWS)云服务管理。所有的这几个目标从本质上来说都是在一个台或者几台服务器上,执行一系列的命令而已。通俗的说…

    Linux干货 2016-04-15
  • Lvm的创建

    一、LVM相关基础:     PE:类似与磁盘的block,这个的大小也会影响VG的大小     PV:是磁盘分区或逻辑上与磁盘分区具有相同功能的设备(RAID),是LVM的基本存储模块,但与基本的物理存储模块相比,却包含有lvm相关的参数     VG:类似于非lvm系统中的物理磁盘,包含多个pv     LV:类似于非lvm系统中的磁盘分区   PV相关…

    2016-04-10
  • 计划任务

    任务计划Linux任务计划、周期性任务执行未来的某时间点执行一次任务:atbatch:系统自行选择空闲时间去执行此处指定的任务周期性运行某任务:cron     at任务at命令:at [option] TIME常用选项:-V 显示版本信息:-l: 列出指定队列中等待运行的作业;相当于atq-d: 删除指定的作业;相当于atrm-c: 查…

    Linux干货 2017-08-28