shell脚本基础和grep文本处理工具企业应用4
文本处理工具:
egrep:
支持扩展的正则表达式实现类似于grep文本过滤功能:grep -E
egrep [OPTIONS] PATTERN [FILE...]
egrep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
选项:
-i,-o,-v,-q,-A,-B,-C
-G:支持基本正则表达式
扩展正则表达式的元字符:
字符匹配
.:任意单个字符
[]:指定范围内的任意单个字符
[^]:指定范围外的任意单个字符
次数匹配
*:任意次,0,1或多次
?: 0次或1次,即其前的字符是可有可无的
+:其前的字符至少1次
{m}:其前的字符m次
{m,n}:至少m次,至多n次
{0,n}:至多n次
{m,}:至少m次
位置锚定
^:行首锚定
$:行尾锚定
\<,\b:词首锚定
\>,\b:词尾锚定
分组及引用
():分组,括号内的模式匹配到的字符也会被记录于正则表达式引擎的内部变量中
后向引用:\1,\2,\3,...
或
a|b:a或者b
C|cat:C或者cat
(C|c)at:Cat或者cat
fgrep:不支持正则表达式元字符
当无需要用到元字符去编写模式时,使用fgrep必能更好,性能强
文本查看及处理工具:wc,cut,sort,uniq,diff,patch
wc:word count
wc [OPTION]... [FILE]...
-l:lines
-w:words
-c:bytes
cut:remove sections from each line of files
cut OPTION... [FILE]...
-d CHAR:以指定的字符为分隔符;后边可以直接跟选项参数,而不要空格
-f FIELDS:挑选出的字段
#:指定的单个字段
#-#:指定连续的多个字段
#,#:指定离散的多个字段
sort:sort lines of text files
sort [OPTION]... [FILE]...
-n:基于数值大小而非字符进行排序
-t CHAR:指定分隔符
-k #:用于排序比较的字段
-r:逆序排序
-f:忽略大小写
-u:重复的行只保留一份
重复行指连续且相同的数据
uniq:report or omit repeated lines 报告或移除重复的行
uniq [OPTION]... [INPUT [OUTPUT]]
-c:显示每行的重复次数
-u:仅显示未曾重复过的行
-d:仅显示重复过的行
diff:compare files line by line 逐行比较文件的不同
diff [OPTION]... FILES
生成打补丁的文件,为下边的patch命令打补丁用
diff /PATH/TO/OLDFILE /PATH/TO/NEWFILE > /PATH/TO/PATCH_FILE
-u:使用unfled机制,即显示要修改的行的上下文,默认为3行
patch:向文件打补丁
patch [-blNR][ -c| -e| -n][-d dir][-D define][-i patchfile] [-o outfile][-p num][-r rejectfile][file]
patch [OPTIONS] -i /PATH/TO/PATCH_FILE /PATH/TO/OLDFILE
patch /PATH/TO/OLDFILE < /PATH/TO/PATCH_FILE
shell脚本基础和grep文本处理工具企业应用4的更多相关文章
- shell脚本基础和grep文本处理工具企业应用2
shell脚本编程: 编程语言的分类: 根据运行方式 编译运行:源代码-->编译器(编译)-->程序文件 优 ...
- shell脚本基础和grep文本处理工具企业应用3
文本处理工具: linux上文本处理三剑客 grep,egrep,fgrep:文本过滤工具(模式:pattern)工具 grep:默认支持的是基本正则表达式: ...
- shell脚本基础和grep文本处理工具企业应用1
bash特性及bash脚本编程初步: 用户要跟计算机交互就需要有终端,比如:显示器.键鼠等,在终端有附着的接口程序 GUI:KDE.GNome.Xfce CLI:/etc/shells bash ...
- shell脚本学习指南-grep文本搜索命令-学习(3)
1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全 ...
- [linux] grep 文本搜索工具
grep [option] pattern file Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep全称是Global Regular ...
- shell脚本-基础
shell脚本-基础 编程基础 程序是指令+ 数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell 程序提供了编程能力,解释执行. 计算运行二进 ...
- Linux shell脚本基础学习详细介绍(完整版)一
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...
- Shell脚本基础学习
Shell脚本基础学习 当你在类Unix机器上编程时, 或者参与大型项目如k8s等, 某些框架和软件的安装都是使用shell脚本写的. 学会基本的shell脚本使用, 让你走上人生巅峰, 才怪. 学会 ...
- 什么是Shell?Shell脚本基础知识详细介绍
这篇文章主要介绍了什么是Shell?Shell脚本基础知识介绍,本文是一篇Shell脚本入门文章,在本文你可学到什么是Shell.有多少种Shell.一个Shell脚本代码实例,需要的朋友可以参考下 ...
随机推荐
- 树莓派搭建bt下载机、即是安装transmission
Transmission是一种BitTorrent客户端, 安装:sudo apt-get install transmission-daemon 给用户授权:sudo usermod -a -G p ...
- [ES6 系列] 你真的了解ES6吗(一)
前言 无论是我们日常开发还是面试跳坑, ES6 已经变得越来越重要,那么你是否对它足够熟悉呢 ES6 将会是专栏接下来的一个系列,从最基础的概念或者有趣的问题开始逐渐深入,探究 ES6 常用的特性以及 ...
- 关于python脚本头部设置#!/usr/bin/python
今天又是贼几把菜的一天0.0 读别人程序的时候看到在python文件头部设置签名,感觉贼几把酷,自己也试着在文件前段设置了一下. 设置还是蛮简单的,设置过程如图所示. 设置后如图所示: 当然你也可能看 ...
- luoguP2634聪聪可可(点分治)
题目链接:https://www.luogu.org/problem/P2634 题意:给一颗树,求距离的模3为0的点对数量,注意(1,1)算一个点对,(1,2)和(2,1)算两个点对. 思路:和点分 ...
- Nginx整合Tomcat
现在先不考虑集群的配置问题,只实现Nginx实现一台tomact的代理 1.我们需要一个web项目,这里我把先准备好的web.war文件部署到Tomact服务器上 mvn clean install ...
- Hive_解析 get_json_object ( )
Hive_解析 get_json_object ( ) get_json_object ( string json_string, string path ) 说明: 第一个参数填写json对象 ...
- IDEA自动生成的注释模板
使用效果如下: * * @功能描述 : $params$ * @return $returns$ * @author xuetao */ 其中 $params$的表达式如下: groovyScript ...
- Q_OBJECT提供了信号槽机制、国际化机、RTTI 的反射能力(cpp中使用Q_OBJECT导致无法处理moc,就需要#include “moc_xxx.h”)
只有继承了QObject类的类,才具有信号槽的能力.所以,为了使用信号槽,必须继承QObject.凡是QObject类(不管是直接子类还是间接子类),都应该在第一行代码写上Q_OBJECT.不管是不 ...
- C# 使用Emit实现动态AOP框架 进阶篇之异常处理
目 录 C# 使用Emit实现动态AOP框架 (一) C# 使用Emit实现动态AOP框架 (二) C# 使用Emit实现动态AOP框架 (三) C# 使用Emit实现动态AOP框架 进阶篇之异常处 ...
- nodejs和npm
Node.js安装及环境配置之Windows篇:https://www.cnblogs.com/liuqiyun/p/8133904.html 淘宝NPM镜像:https://npm.taobao.o ...