每天学一点儿shell:Linux三剑客——sed命令
文章目录
- sed用法
- sed实例用法
- 1、打印文件的第2行
- 2、打印文件的第2-5行
- 3、删除第2行
- 4、删除第2-5行
- 5、删除第2到最后一行
- 6、追加“love china”
- 7、把2-5行替换成"china"
- 8、只打印包含模板的行
- 9、只打印包不含模板的行
- 10、替换字符串
sed用法
用法如下:
sed [选项]... {脚本(如果没有其他脚本)} [输入文件]...
选项 | 解释 |
---|---|
-n | –quiet, --silent ,静默模式,不输出内容到屏幕 |
-e | –expression脚本,添加"脚本"到程序的运行列表 |
-f | –file脚本文件,添加"脚本文件"到程序的运行列表 |
-r | –regexp-exended,在脚本中使用扩展正则表达式 |
-i | –in-place,直接编辑文件 |
-i.bak | 备份文件并原处编辑 |
常用的编辑命令:
关键字 | 解释 |
---|---|
d | 删除匹配的行,并立即启用下一轮循环 |
p | 打印当前模式空间内容,追加到默认输出之后 |
a | 新增,a的后面可以接字符串,支持使用\n实现多行追加 |
i | 在行前面插入文本 |
c | 替换行为单行或多行文本 |
w | 保存模式匹配的行至指定文件 |
r | 读取指定文件的文本至模式空间中匹配到的行后 |
= | 模式空间中的行打印行号 |
! | 模式空间中匹配行取反处理 |
s/// | 查找替换,支持使用其他分隔符,s@@@,s###。替换标记:1.g行内全局替换2.p显示替换成功的行3.w newFile 将替换成功的行保存至文件中 |
sed实例用法
测试文件内容如下
[root@hadoop-master test-sed]# nl file.txt1 leo hello-sed2 leo2 hello2-sed3 leo3 hello3-sed4 hello se5 aaa 1116 bbb 2227 ccc 333
1、打印文件的第2行
[root@hadoop-master test-sed]# nl file.txt | sed -n 2p2 leo2 hello2-sed
2、打印文件的第2-5行
[root@hadoop-master test-sed]# nl file.txt | sed -n '2,5p'2 leo2 hello2-sed3 leo3 hello3-sed4 hello se5 aaa 111
3、删除第2行
[root@hadoop-master test-sed]# nl file.txt | sed '2d'1 leo hello-sed3 leo3 hello3-sed4 hello se5 aaa 1116 bbb 2227 ccc 333
4、删除第2-5行
[root@hadoop-master test-sed]# nl file.txt | sed '2,5d'1 leo hello-sed6 bbb 2227 ccc 333
5、删除第2到最后一行
[root@hadoop-master test-sed]# nl file.txt | sed '2,$d'1 leo hello-sed
6、追加“love china”
[root@hadoop-master test-sed]# nl file.txt | sed '2a love china\n'1 leo hello-sed2 leo2 hello2-sed
love china3 leo3 hello3-sed4 hello se5 aaa 1116 bbb 2227 ccc 333
[root@hadoop-master test-sed]# nl file.txt | sed '2i love china'1 leo hello-sed
love china2 leo2 hello2-sed3 leo3 hello3-sed4 hello se5 aaa 1116 bbb 2227 ccc 333
7、把2-5行替换成"china"
[root@hadoop-master test-sed]# nl file.txt | sed '2,5c china'1 leo hello-sed
china6 bbb 2227 ccc 333
8、只打印包含模板的行
[root@hadoop-master test-sed]# nl file.txt | sed -n '/leo/p'1 leo hello-sed2 leo2 hello2-sed3 leo3 hello3-sed
9、只打印包不含模板的行
[root@hadoop-master test-sed]# nl file.txt | sed '/leo/d'4 hello se5 aaa 1116 bbb 2227 ccc 333
10、替换字符串
将leo替换为china
[root@hadoop-master test-sed]# nl file.txt | sed 's/leo/china/g'1 china hello-sed2 china2 hello2-sed3 china3 hello3-sed4 hello se5 aaa 1116 bbb 2227 ccc 333
每天学一点儿shell:Linux三剑客——sed命令相关推荐
- linux三剑客-sed命令的学习笔记
本文为在B站上学习linux命令的学习笔记,视频出处为https://www.bilibili.com/video/BV1244y1e73a?p=23&spm_id_from=pageDriv ...
- 批量修改linux换行格式,linux中sed命令批量修改
sed命令下批量替换文件内容 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 文件名 -i 表示inplace edit,就地修改文件 ...
- 【Linux脚本-sed命令在文本首行和尾行插入空行】
@[TOC]Linux脚本-sed命令在文本首行和尾行插入空行 Linux脚本-sed命令在文本首行和尾行插入空行 演示如下: 首先创建需要操作的文本文件 //create a file contai ...
- Linux中sed命令使用大全
Linux中sed命令使用大全 sed编辑器是一种流式编辑器,与常见的交互式文本编辑器相反,交互式文本编辑器比如vim,可以通过键盘来交互式插入,删除文本,替换文本,流试编辑器会在编辑器处理数据之前预 ...
- linux中替换命令详解,linux中sed命令字符串替换的用法详解
Linux系统中sed命令可以将字符串批量替换,省去了很多麻烦,下面由学习啦小编为大家整理了linux系统中sed命令字符串替换的用法详解,希望对大家有帮助! linux中sed命令字符串替换的用法详 ...
- Linux miny选择字体,linux下sed命令对文件执行文本替换
让我们看一下 sed 最有用的命令之一,替换命令.使用该命令,可以将特定字符串或匹配的规则表达式用另一个字符串替换.下面是该命令最基本用法的示例: $ sed -e 's/foo/bar/' myfi ...
- linux中往sed命令,Linux中Sed命令怎么用?
Linux中Sed命令怎么用? 发布时间:2020-05-26 17:14:39 来源:亿速云 阅读:245 作者:鸽子 Sed介绍:sed是文本处理工具,读取文本内容,根据指定的条件进行处理如删除. ...
- Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)之二——只改变第一出现的那一行
一.背景 在之前的文章中有介绍过<Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)> 但是这种方法存在一定的问题,就是假如某个变量在一个文件中出现两次,却只想更改 ...
- linux 的sed命令解释 sed ':t;N;s/\n/,/;b t' 将换行符换成逗号
linux 的sed命令解释 sed ':t;N;s/\n/,/;b t' 将换行符换成逗号 实现的功能是吧换行符换成逗号了,自己试验过. 求解释,:t N b t 都是什么意思??? :t 定义la ...
最新文章
- 【Sql Server】DateBase-触发器
- 《软件设计师》——数据结构和算法基础
- 超市账单管理系统设计思路
- linux网络编程常用函数详解与实例(socket--bind--listen--accept)
- MongoDB数据库安装与连接
- Zmodem transfer canceled by remote side
- Leecode 301. 删除无效的括号——Leecode每日一题系列
- 【渝粤教育】国家开放大学2018年春季 0463-22T英语语音 参考试题
- 通过MySQL自动同步刷新Redis
- 【Elasticsearch】腾讯Elasticsearch海量规模背后的内核优化剖析
- avalon使用笔记
- Kubernetes 小白学习笔记(14)--k8s集群路线-kubernetes核心组件详解
- 获取 CSDN 1024 程序员节勋章教程
- Python chain函数的用法
- Online Tracking by Learning Discriminative Saliency Map with Convolutional Neural Network
- 果然,ChatGPT 还是被拿去搞黄色了...
- 基于STM32的万能红外遥控器
- 英雄会归来,做个人物小点评。
- 知易行难的 “目标管理法”
- Vuforia examples 简介
热门文章
- ABAP入门培训8讲
- 启用物料账后,有两种物料价格确定方式
- 取生产订单状态的逻辑
- 教育硬件告别“不温不火”:有道首战告捷,教育、科技巨头虎视眈眈
- 疫情影响海外净利润?海尔智家的回答出人意料
- 不懂就问,我月薪三千,离用lamer开mini还有多远?
- 从“抢跑”到领跑,滴滴旗下橙心成社区团购最“优选”
- 百度健康打通医药电商服务
- python发送邮件带附件_在python中如何发送带有附件的邮件?
- python @修饰符_Python基础(面向对象之类成员与修饰符)