sed简单用法
参数说明:
-e 以指定的script来处理输入的文本文件
-f 以指定的script文件来处理输入的文本文件
-h 显示帮助
-n 仅显示script处理后的结果
-V 显示版本信息
-v 反选
动作说明:
a 新增,后面跟字符串,插入在指定行的下一行
c 取代,后面跟字符串,可以取代n1,n2之间的行
d 删除
i 插入,后面跟字符串,插入在指定行的上一行
p 打印
s 取代
1.添加行
sed -e 4a\newline text.file
sed '3a hello wold' text.txt
sed ''
1.打印某行 sed -n 'n'p filename
2.打印多行 sed -n '1,$'p filename
3.打印包含某个字符串的行 sed -n '/root/'p text.txt
特殊字符^ $ . *也能在sed中使用
sed -n '/^i/'p text.txt 打印以i开头的行
sed -n '/in$/'p text.txt 打印以in结尾的行
sed -n '/r..o/'p text.txt 打印包含r..o的行。中间2个为任意字符
sed -n '/ooo*/'p text.txt 打印oo ooo...的行。最少匹配oo
4.实现多个行为 -e
sed -e '1'p -e '/111/'p -n text.txt
5.删除某行或这多行 d删除
sed '1'd text.txt
sed '1,3'd text.txt
sed '2,$'d text.txt
sed '/oot/' text.txt
6.替换字符串或字符
s替换 g 全局替换,不加只替换每行的第一个
除了/,还可以使用其他的特殊字符如# @
sed '2,4s/ot/to/g' text.txt 将第2行到第4行的ot替换为to
sed 's#ot#to#g' text.txt
sed 's/[0-9]//g' text.txt 删除所有的数字
sed 's/[a-zA-Z]//g' text.txt 删除所有的字母
sed 's/[0-9a-zA-Z]//g' text.txt 删除所有的数字和字母
7.调换2个字符的位置
head -n 10 text.txt|sed 's/\(root\)\(.*\)\(rcu_gp_kth\)/\3\2\1/'
替换前


8.增加字符串
sed 's/^.*$/123&/' text.txt|head -n 10 在每一行的前面加上123

sed 's/^.*$/&123/' text2.txt

9.直接替换
sed -i 's/:/#/g' text.txt
mac下直接替换一直报错,解决方法:
1. sed -ig 's/456/hello/g' text2.txt
2. sed -i '' 's/hello/456/g' text2.txt
3. 保存到一个文件
sed 's/456/hello/g' text2.txt > text3.txt
参考:http://blog.sina.com.cn/s/blog_5fde60890101ic7r.html
sed简单用法的更多相关文章
- sed 简单用法
sed的一个简单用法: eg:在某一个文件中的一个aaa字段前后添加某些字段. 在aaa前面添加字段:sed -ne 's/aaa/&HELLO/p' test 输出结果:aaaHELLO 在 ...
- 正则表达式,sed简单用法
一. 正则表达式 1. 常见的正则表达式字符 [] 匹配字符集 grep "bl[lo]g" oldboy.txt 表示字符‘l’或者‘o’都可匹配 * 重复前面字符任意次 g ...
- sed命令用法详解
sed命令用法 sed是一种流编辑器,它是文本处理中非常有用的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时缓冲区中,称为『模式空间』(pattern space) ...
- centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件.目录属性 shell数组简单用法 $( ) 和$ ...
- Shellz中awk的简单用法
其实shell脚本的功能常常被低估.在实际应用中awk sed 等用法可以为shell提供更为强大的功能.下面我们将一下awk调用的简单方法进行了总结.方便同学们学习: awk的简单用法: 第一种调用 ...
- Shell基础(五):sed基本用法、使用sed修改系统配置、sed多行文本处理、sed综合脚本应用
一.sed基本用法 目标: 本案例要求熟悉sed命令的p.d.s等常见操作,并结合正则表达式,完成以下任务: 1> 删除文件中每行的第二个.最后一个字符 2> 将文件中每行的第一个. ...
- CATransition(os开发之画面切换) 的简单用法
CATransition 的简单用法 //引进CATransition 时要添加包“QuartzCore.framework”,然后引进“#import <QuartzCore/QuartzCo ...
- jquery.validate.js 表单验证简单用法
引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...
- linux中sed的用法【转】
sed命令行格式为: sed [-nefri] ‘command’ 输入文本/文件 常用选项: -n∶取消默认的输出,使用安静(silent)模式.在一般 sed 的 ...
随机推荐
- c++模板函数声明定义分离编译错误详解
今天看到accelerated c++上有个简单的vector容器的实现Vec,就再vs2008上编译了下: ///// Vec.h #ifndef GUARD_VEC_H #define GUARD ...
- 仿sql注入 sql
<?phpclass sqlsafe { //(and|or)\\b 表示以and和or结尾的单词如:aand,band,都可以匹配//如果匹配and或or则使用 \\b(and|or)\\b来 ...
- UITableView去掉分隔符
或用代码实现 [TableView setSeparatorColor:[UIColor clearColor]]; 问题一用你给的方法貌似不行,我用这个方法把分隔线给“去掉”了: [editV ...
- xxx/labelKeypoint/utils/qt.py:81: RuntimeWarning: invalid value encountered in double_scalars
原代码: return np.linalg.norm(np.cross(p2 - p1, p1 - p3)) / np.linalg.norm(p2 - p1) 出现报错: xxx/labelKeyp ...
- grafana设置Alert阈值和邮件报警
首先我们需要在机器上开启smtp/25服务,这里有一个坑,注意,云主机为了防止滥发邮件已经封掉了smtp的所有通信,所以云主机发邮件是有问题的. 安装sendmail,ubuntu用apt,cento ...
- Redis学习第二课:Redis String类型及操作
Strings类型 String是最简单的类型,一个Key对应一个Value,String类型是二进制安全的,可以包含任何数据,比如jpg图片或序列化的对象. Strings类型的操作: Set:设置 ...
- 20155224 2016-2017-2 《Java程序设计》第5周学习总结
20155224 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 Java中的错误都会被打包为对象,可以尝试(try)捕捉(catch)代表错误的对象 ...
- js中准确判断数据类型的方法
一 通用的typeof 方法 typeof ture 输出 Boolean typeof 123 输出 number ..... 但是 typeof 无法判断 nu ...
- ElasticSearch(六):IK分词器的安装与使用IK分词器创建索引
之前我们创建索引,查询数据,都是使用的默认的分词器,分词效果不太理想,会把text的字段分成一个一个汉字,然后搜索的时候也会把搜索的句子进行分词,所以这里就需要更加智能的分词器IK分词器了. 1. i ...
- 记录几个ubuntu环境下的php相关的路径
php路径 /usr/bin/php phpize5 /usr/bin/phpize5 php5-fpm /usr/sbin/php5-fpm php所有的配置文件 /etc/php5/fpm 重启p ...