博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sed 学习笔记(未完成)
阅读量:6437 次
发布时间:2019-06-23

本文共 1086 字,大约阅读时间需要 3 分钟。

#sed

sed是一种流编辑器,

它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。

处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。

Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

#命令格式

1
sed 
[options] 
'command' 
file
(s)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[root@node3 ~]
# cat file 
a
b
ccc
ddd123aaa
 
123aaa321
           
###
#asda
$ada
$
[root@node3 ~]
# sed '1p' file 
a
a
b
ccc
ddd123aaa
123aaa321
   
###
#asda
$ada
$
[root@node3 ~]
# sed -n '1p' file 
a

#分组

1
2
[root@node3 ~]
# echo -e "I love you.\n" | sed -n 's/\(love\)/\1s/p' 
I loves you.

#引用外部变量

1
2
3
4
5
6
[root@node3 ~]
# test=hello
[root@node3 ~]
# echo "hello WORLD" | sed "s/$test/HELLO/g" 
HELLO WORLD
[root@node3 ~]
# echo "hello WORLD" | sed 's/'$test'/HELLO/g' 
HELLO WORLD
[root@node3 ~]
#

#选定行的范围

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@node3 ~]
# sed -n '/^a/,/^1/p' file 
a
b
ccc
ddd123aaa
123aaa321
[root@node3 ~]
# sed -n '3,/^#/p' file 
ccc
ddd123aaa
 
123aaa321
           
###

(未完成,有空更)

本文转自 chaunceyjiang  51CTO博客,原文链接:http://blog.51cto.com/cqwujiang/1940642,如需转载请自行联系原作者
你可能感兴趣的文章
笨办法学C 练习3:格式化输出
查看>>
弹性盒模型
查看>>
SpringBoot四大神器之Actuator
查看>>
[pov-ray]命令行和ini文件中可指定参数及意义
查看>>
Magento后台模块示例(1)
查看>>
新建Android工程需要的开源项目
查看>>
敏捷,能让人类登上月球吗?
查看>>
[译]大数据分析平台搭建教程:基于Apache Zeppelin Notebook和R的交互式数据科学
查看>>
在 Swift 中截取 C 字符串
查看>>
Python零基础学习笔记(三十)—— 读文件
查看>>
python学习手册25 OOP:宏伟蓝图
查看>>
C语言大牛推荐初学者不要犯的17种BUG
查看>>
初识CSS
查看>>
Java集合类常见面试知识点总结
查看>>
位运算符总结
查看>>
分布式工作流任务调度系统Easy Scheduler正式开源
查看>>
如何进入一个新领域
查看>>
Android屏幕适配讲解与实战
查看>>
阿里云容器服务ACK发布Windows Container支持,让Windows应用快速上云 ...
查看>>
空间碎片化处理
查看>>