sed 练习
[root@server3 mnt]# cat -n passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 rooot
5 rooooot
6 Root
7 ROOOT
8 roooooot.
9 test
10
11
12 tes0t.
13 adm:x:3:4:adm:/var/adm:/sbin/nologin.
1.删除与增加
删除2-5行
[root@server3 mnt]# cat -n passwd | sed '2,5d'
1 root:x:0:0:root:/root:/bin/bash
6 Root
7 ROOOT
8 roooooot.
9 test
10
11
12 tes0t.
13 adm:x:3:4:adm:/var/adm:/sbin/nologin.
增加字符
[root@server3 mnt]# cat -n passwd | sed '2a are you ok'
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
are you ok
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 rooot
5 rooooot
6 Root
7 ROOOT
8 roooooot.
9 test
10
11
12 tes0t.
13 adm:x:3:4:adm:/var/adm:/sbin/nologin.
增加两行字
[root@server3 mnt]# cat -n passwd | sed '2a are you ok? \
> fine'
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
are you ok?
fine
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 rooot
5 rooooot
6 Root
7 ROOOT
8 roooooot.
9 test
10
11
12 tes0t.
13 adm:x:3:4:adm:/var/adm:/sbin/nologin.
2.以行为单位的替换与显示功能
将2-5行替换成sorry
[root@server3 mnt]# cat -n passwd | sed '2,5c sorry'
1 root:x:0:0:root:/root:/bin/bash
sorry
6 Root
7 ROOOT
8 roooooot.
9 test
10
11
12 tes0t.
13 adm:x:3:4:adm:/var/adm:/sbin/nologin.
仅列出文件内的6-9行
[root@server3 mnt]# cat -n passwd | sed -n '6,9p' #若不加n,6-9行会重复输出
6 Root
7 ROOOT
8 roooooot.
9 test
3.部分数据的查找并替换的功能
sed的查找个查找格式如下
sed 's/要被替换的字符串/新的字符串/g'
通过查找来显示出自己的ip
[root@server3 mnt]# ip addr | grep eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 172.25.8.3/24 brd 172.25.8.255 scope global eth0
[root@server3 mnt]# ip addr | grep 'eth0$'
inet 172.25.8.3/24 brd 172.25.8.255 scope global eth0
[root@server3 mnt]# ip addr | grep 'eth0$' | sed 's/inet//g'
172.25.8.3/24 brd 172.25.8.255 scope global eth0
[root@server3 mnt]# ip addr | grep 'eth0$' | sed 's/inet//g' |sed 's/brd.*$//g'
172.25.8.3/24
sed 练习的更多相关文章
- sed的应用
h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...
- 文本处理三剑客之sed命令
第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...
- 6-2 sed 命令
1. sed : stream editor,流编辑器 是处理纯ASICC纯文本,按行琢行操作的. 编辑器有两种,行编辑器和全屏编辑器 sed:默认不编辑原文件,仅对模式空间中的数据做处理,而后.处理 ...
- 基本shell编程【3】- 常用的工具awk\sed\sort\uniq\od
awk awk是个很好用的东西,大量使用在linux系统分析的结果展示处理上.并且可以使用管道, input | awk '' | output 1.首先要知道形式 awk 'command' fi ...
- sed awk grep三剑客常用
sed的常用用法: awk的常用用法: grep的常用用法: 除了列出符合行之外,并且列出后10行. grep -A 10 Exception kzfinance-front.log 除了列出符合行之 ...
- linux shell 用sed命令在文本的行尾或行首添加字符
转自 http://www.cnblogs.com/aaronwxb/archive/2011/08/19/2145364.html 昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed ...
- Sed、Awk单行脚本快速参考
文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...
- sed awk 样例
sed [options] '[action]' filename options: -n:一般sed命令会把所有数据都输出到屏幕,如果加入此选项,则只会把经过sed命令处理的行输出到屏幕. -e:允 ...
- linux sed命令详解
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- sed命令详解
搜索 纠正错误 添加实例 sed 功能强大的流式文本编辑器 补充说明 sed 是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时 ...
随机推荐
- C高级第一次作业
未来两周学习内容 复习指针的定义和引用 指针的应用场景: 指针作为函数参数(角色互换) 指针作为函数的参数返回多个值 指针.数组和地址间的关系 使用指针进行数组操作 数组名(指针)作为函数参数(冒泡排 ...
- 20169219 实验二 Java面向对象程序设计
实验二 Java面向对象程序设计 一.程序设计中临时变量的使用 任务: //定义一个数组 int arr[] = {1,2,3,4,5,6,7,8}; //打印原始数组的值 for(int i:arr ...
- JQuery.validator插件使用
首先给变量validator赋值 var validator =$('#test').validate({validate构造 }); 接着调用 $('#test').valid() 会使用上面的验证 ...
- 【转】android 布局优化
前言 本篇文章为Android优化的布局部分,该部分应该是Android中很重要的,无论是在自定义控件中,还是在简单的书写布局时,都应该尽量遵循一些优化原则,这样布局的绘制效率才会更高,体验才能更好. ...
- C# 真正完美的 汉字转拼音
网上有很多说自己整理的汉字转拼音是完美的,但使用后才发现都是半吊的瓶子,问题多多. 常见的生僻字,或多音字识别,转换后简直让人感觉可怕. 主流的转换有三种:hash匹配,Npinyin,微软PinYi ...
- Qt绘制简单的风向玫瑰图代码
1.绘制简单的风向玫瑰图代码2.主要使用QPainter3.在子widget上绘制需要使用widget监视事件 eventfilter update();//更新界面 //镜头12 QPainter ...
- I/O(输入/输出)---序列化与反序列化
概念: 序列化就是将对象的状态存储到特定的介质中的过程,也就是将对象状态转换为可保持或传输格式的过程. 反序列化则是从特定存储介质中将数据重新构建对象的过程.可以将存储在文件上的对象信息读取,然后重新 ...
- 关于pip无法安装scrapy的问题
安装scrapy时如果出现下列问题: building ' twisted. test. raiser' extension error: Microsoft Visual C++ 14.0 is r ...
- 快速排序(一) 思想 JAVA实现
已知数组59.71.37.56.88.96.21.58.48.43 采用快速排序将数组有序. 快速排序同样采用了“分治策略”,使用递归的思路来实现算法. 快速排序的算法思想: 9.71.37.56.8 ...
- ubuntu 软件使用
1.制作iso: mkisofs -r -o file.iso your_folder_name/