Linux命令-grep,sed,awk
grep
(global search regular expression[RE] and print out the line)
正则表达式全局搜索并将行打印出来
- 在文件中查找包含字符串"text"的行
grep text local_file
grep "text" local_file #另一种方式
grep "text" local_file1 local_file2 ... #查找多个文件
- 在文件中查找不包含字符串"text"的行
grep -v "text" local_file
- 忽略大小写
grep -i "TeXt" local_file
grep -y "TeXt" local_file
- 不显示错误信息,常用于脚本文件中
grep -s "text" local_file
- 只打印出匹配到的字符串
grep -o "text" local_file
- 统计文件中有多少行包含需要查找的字符串
grep -c "text" local_file
- 不输出信息,命令运行成功返回0.失败返回非0值,用于判断
grep -q "text" local_file
- 匹配多个字符串,相当于逻辑中的或
grep -e "text1" -e "text2" local_file
- 递归查找,用于多级目录中的文件
grep -r "text" . #在当前目录下进行查找
- 输出匹配需要查找字符串的行以及之前的行
grep "text" -B 3 local_file #输出之前的3行
- 输出匹配需要查找字符串的行以及之后的行
grep "text" -A 3 local_file #输出之后的3行
sed
流编辑器,用来编辑一个或者多个文件,简化对文件的重复操作。在缓冲区内操作,除非特别指定,不对文件本身内容进行修改。
-i
对文件本身进行修改
-q
- 打印出第2行后退出
sed
sed '2q' local_file
查找
- 查找第2-5行数据
sed '2,5p' local_file
sed -n '2,5p' local_file #并打印行号
- 查找包含字符串"text"的行与包含字符串"file"的行范围内的行
sed '/text/,/file/p' local_file
- 查找从第2行开始一直到以字符串"text“开头的行之间的所有行
sed '2,/^text/p' local_file
添加
- 在第2行后面一行添加字符串"text"
sed '2a text' local_file
- 在第二行前面一行添加字符串"text"
sed '2i text' local_file
- 在每一个单词前面加上字符"a":
sed 's/\w\+/a&/g' # \w\+匹配每一个单词 &对应之前匹配的每一个单词
替换
- 替换字符串
file
为files
sed 's/file/files/g' local_file #打印到控制台,不修改文件
sed 's:file:file:g' local_file # /标记可以使用其他符号代替
sed -i 's/file/files/g' local_file #修改文件本身内容,不打印到控制台
- 替换第2-5行为字符串"text"
sed '2,5c text' local_file
删除
- 删除文件内的第2-5行
sed '/2,5/d' local_file
- 删除开头字符串为"text"的行
sed '/^text.*//g' local_file
sed '/^text/'d local_file
- 删除最后一行
sed '$d' local_file
- 删除空白行
sed '/^$/d' local_file
awk
- 打印每一行的第2,3列数据
awk '{print $2,$3}' local_file
Linux命令-grep,sed,awk的更多相关文章
- Linux三剑客grep/sed/awk
grep/sed/awk被称为linux的“三剑客” grep更适合单纯的查找或匹配文本: sed更适合编辑匹配到的文本: awk更适合格式化文本,对文本进行较复杂各式处理: Grep --color ...
- linux三剑客grep|sed|awk实践
最好先学习正则表达式的基本用法,以及正则表达式BREs,EREs,PREs的区别 此坑待填 grep sed awk
- linux 三剑客命令(grep,sed ,awk)
grep 命令 :强大的文本’搜索’工具 1.grep -n 'word' file_name 在file_name文件中找到word所在的所有行并显示.-n 为显示行号. 2 ...
- Linux学习grep,sed,awk工具的使用
1.grep:根据模式搜索文本并将符合模式的文本显示出来(pattern模式:由文本字符和正则表达式元字符所匹配出来的条件) 注:alias grep='grep --color' -c:打印符合要求 ...
- Linux三剑客grep、awk和sed
grep,sed 和 awk是Linux/Unix 系统中常用的三个文本处理的命令行工具,称为文本处理三剑客.本文将简要介绍这三个命令并给出基本用法. 管道 在介绍这两个命令之前,有必要介绍一下Uni ...
- 【linux】linux命令grep + awk 详解
linux命令grep + awk 详解 grep:https://www.cnblogs.com/flyor/p/6411140.html awk:https://www.cnblogs.com ...
- linux 命令grep
linux 命令grep grep命令用来搜索文本,或从给定的文件中搜索行内包含了给定字符串或单词的文件.通常来说,grep显示匹配的行.使用grep来搜索包括一个或多个正则表达式匹配到的文本行,然后 ...
- grep sed awk 3个Linux中对文件内容操作的命令
在学习Linux命令中,发现3个有关于文件内容操作的命令grep,sed和awk,在这里简单汇总这3个命令主要作用,在实际中找到最合适的情景应用,详细用法可以参考其他文章. 1.grep命令 主要作用 ...
- 【Linux】 字符串和文本处理工具 grep & sed & awk
Linux字符串&文本处理工具 因为用linux的时候主要用到的还是字符交互界面,所以对字符串的处理变得十分重要.这篇介绍三个常用的字符串处理工具,包括grep,sed和awk ■ grep ...
随机推荐
- Redis的存储类型、集群架构、以及应用场景
什么是redis redis是一种支持Key-Value等多种数据结构的存储系统.可用于缓存.事件发布或订阅.高速队列等场景.该数据库使用ANSI C语言编写,支持网络,提供字符串.哈希.列表.队列. ...
- Power Query系列 - 排序Ranking
Power Query系列 - 排序Ranking 难度: ★★☆☆☆(1星) 适用范围: ★★★☆☆(3星) 概况: 在数据分析中,我们常常需要对数据进行排序,同时我们想知道某个项目或者产品的排名, ...
- 【NHOI2018】扑克游戏
[问题描述] 有一种别样“小猫钓鱼”扑克游戏.有 N 张牌,每张牌都有一个花色和点数.游戏的规则:扑克接龙时,若前面有同样花色的牌,你可以将这两张牌连同之间的牌都取走,得到的分值为取走牌点数之和.这里 ...
- Spring事务笔记
1:在同一个类中,如果A方法有事务,B方法也有事务(propagation = Propagation.REQUIRES_NEW),如下代码所示: @Override@Transactionalpub ...
- java程序员面试宝典之——Java 基础部分(1~10)
基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java"源文件中是否可以包 ...
- python画樱花
用python画简单的樱花 代码如下: import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, t): ...
- Java分割面板和选项卡面板的应用
1.分割面板 JSplitPane类的常用构造方法 构造方法 说明 JSplitPane() 创建一个默认的分割面板.默认情况下为在水平方向上分割,重绘方式为只在调整分隔条位置完成时重绘 JSplit ...
- jQuery中detach&&remove&&empty三种方法的区别
jQuery中empty&&remove&&detach三种方法的区别 empty():移除指定元素内部的所有内容,但不包括它本身 remove():移除指定元素内部的 ...
- Redis面试热点之底层实现篇(续)
0.题外话 接着昨天的[决战西二旗]|Redis面试热点之底层实现篇继续来了解一下ziplist压缩列表这个数据结构. 你可能会抱有疑问:我只是使用Redis的功能并且公司的运维同事都已经搭建好了平台 ...
- I/O中断原理
目录 I/O中断原理 前言 什么是中断 中断类型 硬件中断 软件中断 I/O中断流程 无中断 有中断 中断处理 相关文献 I/O中断原理 前言 在Windows内核原理-同步IO与异步IO和<高 ...