shell 三剑客之 sed pattern 详解
sed 基础介绍

语法格式

sed 处理过程

sed 选项

cat sed.txt

'-p' 打印输出 ,默认输出两次,流输出一次,源文件输出一次
sed 'p' sed.txt

-n 只显示处理的行,静默模式
sed -n 'p' sed.txt

sed '/python/p' sed.txt

sed -n '/python/p' sed.txt

通过文件引入规则进行流处理
cat edit.sed

引入一个文件中定义的规则
sed -n -f edit.sed sed.txt

-r支持扩展正则表达式
sed -n -r '/python|PYTHON/p' sed.txt

将love替换为like,源文件不修改
之所以没有输出信息,是因为没有加 p 选项
sed -n 's/love/like/g;p' sed.txt
修改后的结果输出
sed -n 's/love/like/g;p' sed.txt

将love替换为like,修改源文件
sed -i 's/love/like/g' sed.txt

sed中的pattern详解
pattern 用法表

案例
显示指定的行, 打印file文件的第17行 (LineNumber )
sed -n "17p" file
指定起始行号和结束行号 (StartLine,EndLine )
sed -n "10,20p" file
指定起始行号,然后后面N行 (StartLine,+N )
sed -n "10,+5p" file
正则表达式匹配的行 (/pattern1/ )
sed -n "/^root/p" file
从匹配到pattern1的行,到匹配到pattern2的行 (/pattern1/,/pattern2/)
sed -n "/^mail/,/^ftp/p" /etc/passwd

从指定行号开始匹配,直到匹配到pattern1的 (/LineNumber,/pattern1/)
#打印file文件中第4行开始匹配,直到以hdfs开头的行
sed -n "4,/^hdfs/p" file
从pattern1匹配的行开始,直到匹配到特定 (/pattern1/,LineNumber )
# 打印file文件中匹配root的行,直到第10行结束
sed -n "/root/,10p" file
打印5行并往后+3行
sed -n '5,+3p' /etc/passwd

查找bash的行
sed -n '/bash/p' /etc/passwd

查找/sbin/nologin的行
sed -n '/\/sbin\/nologin/p' /etc/passwd

正则匹配 , 打印以root开头的行
sed -n "/^root/p" /etc/passwd

查找root开头的行到 sync 开头的行结束
sed -n '/^root/,/^sync/p' /etc/passwd

查找root开头的行,到10行结束
sed -n '/root/,10p' /etc/passwd

shell 三剑客之 sed pattern 详解的更多相关文章
- shell 三剑客之 sed 命令详解
sed 编辑命令 sed 编辑命令对照表 把 /etc/passwd 文件赋值到当前路径下,进行操作 cp /etc/passwd ./ cat -n passwd sed 删除操作 删除 passw ...
- sed命令详解 vim高级技巧 shell编程上
第1章 sed命令详解 1.1 查找固定的某一行 1.1.1 awk命令方法 [root@znix ~]# awk '!/oldboy/' person.txt 102,zhangyao,CTO 10 ...
- Linux shell sed 命令详解
详细的sed命令详解,请参考https://my.oschina.net/u/3908182/blog/1921761 sed命令常见用途 查找关键词做全局替换 查找某行的关键词做替换 查找关键字所在 ...
- Linux Shell编程与编辑器使用详解
<Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...
- 转 linux之sed命令详解
http://jingyan.baidu.com/article/fec4bce2228f60f2618d8bb0.html sed 编辑裁剪文件命令 sed -i "s/\/db\/te ...
- 干货!上古神器 sed 教程详解,小白也能看的懂
目录: 介绍工作原理正则表达式基本语法数字定址和正则定址基本子命令实战练习 介绍 熟悉 Linux 的同学一定知道大名鼎鼎的 Linux 三剑客,它们是 grep.awk.sed,我们今天要聊的主角就 ...
- Linux学习之sed命令详解
概述 sed是stream editor的简称,也就是流编辑器.它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区 ...
- shell编程之awk命令详解
shell编程之awk命令详解 a:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; out ...
- 【转】【Linux】sed命令详解
sed命令详解 sed是stream editor的简称,也就是流编辑器.它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令 ...
随机推荐
- 123457123456#1#----com.MC.EnglishGame98--前拼后广--jp英语-mc
com.MC.EnglishGame98--前拼后广--jp英语-mc
- Java基础教程:Java内存区域
Java基础教程:Java内存区域 运行时数据区域 Java虚拟机在执行Java程序的过程种会把它所管理的内存划分为若干个不同的数据区域.这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟 ...
- AI - H2O - 安装与运行
安装的要求 H2O的安装对操作系统.编程语言和浏览器有具体的要求. 详情请查看官方信息 下载H2O Downloading & Installing H2O Download 示例 - 在Ce ...
- web端自动化——Remote应用
Selenium Grid允许同时并行地.在不同的环境上运行多个测试任务.这里主要演示一下怎么使用Selenium Grid. 准备: 1. 需要两台机子 2.两台机子分别安装好JDK环境 3.两台机 ...
- 洛谷 题解 P1550 【[USACO08OCT]打井Watering Hole】
本题看似很难,实际上思路非常简单--如果你想通了. 首先有一个问题:图中有几个点?大部分的人会回答\(n\)个点.错了,有\(n+1\)个. 多出来的那个点在哪?关键在于你要理解每一个决策的意义.实际 ...
- numpy 数组集合运算及下标操作
1. 数组的集合运算 1.1. 并集 np.union1d(a,b)计算数组的并集: In [1]: import numpy as np In [2]: a = np.array([1,2,3]) ...
- hadoop常见问题收集
hadoop 搭建 常用命令记录 快捷键安装在/user/local/bin目录下 nano 文件名 ctrl + k 剪切一行 ctrl + o 保存并重命名,不重命名直接enter ctrl + ...
- linux服务器安装jdk (手动解压方式安装)
linux服务器安装jdk 使用的是通过手动解压安装的方式,没有通过yum或者apt-get命令安装 准备: 下载一个jdk,版本自选,后缀为(.tar.gz) 开始 创建目录 mkdir /usr/ ...
- 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?
package com.hadoop.hdfs; import org.apache.hadoop.yarn.webapp.hamlet.Hamlet; import org.junit.Test; ...
- Linux基础-11-rpm管理软件包
1. 使用RPM安装及移除软件 1) RPM的定义:RPM就是Red Hat Package Manger(红帽软件包管理工具)的缩写. 2) rpm的文件名分为5部分,其中: 第1部分是name,表 ...