`
MyEyeOfJava
  • 浏览: 1151888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7af2d6ca-4fe1-3e9a-be85-3f65f7120bd0
测试开发
浏览量:71167
533896eb-dd7b-3cde-b4d3-cc1ce02c1c14
晨记
浏览量:0
社区版块
存档分类
最新评论

一分钟sed入门(一分钟系列)

sed 
阅读更多

1.简介

sed是一种行编辑器,它一次处理一行内容。

 

2.sed调用方式

sed [options] 'command' file(s)

sed [options] -f scriptfile file(s)

第一种直接在命令行中执行,第二种把命令写到了脚本中,二者无本质区别。

示例(1):打印hello.txt的内容

sed -n p hello.txt

说明:

-n:sed会在处理一行文本前,将待处理的文本打印出来,-n参数关闭了这个功能

p:命令表示打印当前行

hello.txt:待处理的文件

这个指令相当于cat

 

3.定址

告诉sed你期望处理的行,由逗号分隔的两个数字表示,$符号表示最后一行;

当然也可以使用正则来定位期望处理的行。

示例(2):打印hello.txt的第二行到最后一行

sed -n '2,$'p hello.txt

示例(3):打印hello.txt中正则匹配"100"的行

sed -n '/100/'p hello.txt 

 

4.基本命令

hello.txt的内容为

1 2 3
10 20 30
100 200 300

命令:a\

在匹配行的后面加入一行文本

示例(4)匹配100的行,后面加入一行"new line"

sed '/100/'a\ "new line" hello.txt

输出内容为:

1 2 3
10 20 30
100 200 300
new line

命令:i\

在匹配行的前面加入一行文本

示例(5)匹配100的行,前面加入一行"new line"

sed '/100/'i\ "new line" hello.txt

输出内容为:

1 2 3
10 20 30
new line
100 200 300

命令:c\

将匹配行替换为目的行

示例(5)匹配100的行,替换为"new line"

sed '/100/'c\ "new line" hello.txt

输出内容为:

1 2 3
10 20 30
new line

命令:d

将匹配行删除

示例(5)删除匹配100的行

sed '/100/'d hello.txt

输出内容为:

1 2 3
10 20 30

命令:s

将匹配行替换

详细命令为:s/pattern-to-find/replacement-pattern/g

pattern-to-find:被替换的串

replacement-pattern:替换成这个串

g:全部替换,默认只替换匹配到的第一个

示例(5)讲100替换为hello

sed 's/100/hello/g' hello.txt 

输出内容为:

1 2 3
10 20 30
hello 200 300

5.元字符集

^:匹配一行的开始

$:匹配一行的结束

.:匹配某个字符

[abc]:匹配指定范围字符

 

6.实用命令

匹配以10开头的行,并替换为yes,并输出

sed -n 's/^10/yes/p' hello.txt

输出内容为:

yes 20 30
yes0 200 300

取出文件中行手的行号与冒号

设hello.txt的内容为

1:#!/bin/sh

2:cat hello.txt

3:exit

 

sed -n -e 's/^[0-9]\{1,\}://g'p hello.txt

输出结果为:

#!/bin/sh
cat hello.txt

exit

 

分享到:
评论

相关推荐

    sed命令详解 快速入门

    3. **命令**: `sed`支持一系列内置命令来进行文本处理。这些命令可以单独使用,也可以通过管道连接起来形成复杂的文本处理流程。 #### 三、sed命令详解 ##### 1. 基本命令格式 - **调用格式**: `sed [选项] '命令...

    [图文] linux sed入门的15个小操作

    ### Linux Sed 入门的15个小操作详解 在Linux环境下,`sed`是一个功能强大的流编辑器,常被用于文本处理和脚本编写中。本文档基于标题“[图文] linux sed入门的15个小操作”,将详细介绍与之相关的15个基本`sed`...

    sedsed工具

    3. **脚本文件**:复杂操作可以写入脚本文件,如`sed -f script.sed file.txt`,`script.sed`包含一系列连续的`sed`命令。 ### 总结 `sedsed`工具在`sed`基础上增强了删除操作的便利性,简化了文本处理流程,尤其...

    linux shell sed从入门到精通

    Linux shell sed从入门到精通 sed命令是Linux shell中一个功能强大的流编辑器,它可以对文本进行各种操作,如打印、删除、替换、修改等。下面是sed命令的详细用法和知识点: 一、基本用法 sed的基本用法是将输入...

    通过sed截取一行匹配内容

    通过sed截取一行匹配内容 sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的...

    玩透sed:探究sed原理.pdf

    sed原理、机制探究,适合sed深入。...sed修炼系列(一):花拳绣腿之入门篇 sed修炼系列(二):武功心法(info sed翻译+注解) sed修炼系列(三):sed高级应用之实现窗口滑动技术 sed修炼系列(四):sed中的疑难杂症

    sed-4.2.1.rar包括sed-4.2.1-setup.exe、sed-4.2.1-dep.zip、sed-4.2.1-bin.zip

    `sed` 是“流编辑器”(Stream Editor)的缩写,它是一种功能强大的文本处理工具,广泛应用于Linux和Unix系统中。`sed` 可以读取数据流,对输入的数据进行各种操作,如替换、删除、插入等,并将处理结果输出。在给定...

    sed-4.2.1-setup

    3. **流编辑**:sed一次性处理整个文件,而不是逐行处理,这使得它能处理大量数据。 4. **命令链**:多个sed命令可以组合在一起,通过分号(;)或行分隔符执行,实现更复杂的文本操作。 5. **行地址范围**:使用行...

    通用线程sed 实例

    本文将深入介绍sed的基础概念及其高级用法,并通过一系列实用示例帮助读者掌握这一工具。 #### sed的应用场景 在UNIX世界中,虽然vi、emacs等编辑器广受欢迎,但在批量处理文件或自动化编辑任务方面,sed表现出色...

    windows下cmd程序sed命令所需文件

    除了基本操作,`sed`还支持脚本文件,可以编写一系列命令并在一个命令行中执行,这通常用`-f`选项指定,例如`sed -f script.sed 输入文件`。 在Windows的CMD环境中,可能需要注意一些与Unix/Linux环境不同的地方,...

    sed使用方法详解sed使用方法详解

    另外,还可以通过`-f scriptfile`来指定一个包含一系列sed命令的脚本文件。 #### 三、命令模式与地址 sed中的命令可以作用于特定的行或者行范围。这可以通过地址来指定,地址通常出现在命令之前,用空格分隔。例如...

    sed命令详解.docx

    sed(stream editor)是一个强大的文本处理工具,主要用于对文本文件进行非交互式的编辑操作。它的工作方式是逐行读取输入文件,将当前处理的行存储在临时缓冲区(模式空间)中,对缓冲区中的行进行编辑,然后将编辑...

    SED1330/SED1335液晶控制器的应用

    #### 一、SED1330概述 SED1330是一款由日本SEIKO EPSON公司研发的高性能液晶显示控制器。这款芯片以其出色的I/O缓冲能力、丰富的指令集、支持多种文本图形显示与刷新等功能,在液晶显示器领域中占有重要地位。它...

    强大的Unix流编辑器sed在线极速入门 (全三部分)

    【强大的Unix流编辑器sed在线极速入门 (全三部分)】深入解析 Unix系统中,sed(Stream Editor,流编辑器)是一个强大的文本处理工具,它以非交互式的方式批量编辑文件,尤其适合用于创建shell脚本来修改大量文件。...

    sed 高级用法

    在深入了解 sed 的高级用法之前,首先要理解“模式空间”这一概念。模式空间是指 sed 在处理文本时使用的临时缓存区域,它用来存放每行读入的数据。所有的文本处理操作(如查找、替换等)都是在此缓存中进行的。当一...

    GNU sed manual说明书

    sed脚本包含一系列的命令,这些命令可以对文本进行插入、删除、替换等操作。常见的命令包括s(替换)、d(删除)、p(打印)等。而sed还具有一些高级命令,通常不太常用,但在处理复杂文本任务时非常有用。 GNU sed...

    sed中文指南 详细介绍了SED的用法与实例

    它允许用户通过一系列预定义的命令来对文本进行操作,无需直接手动编辑文本内容。SED的主要优势在于它能够高效地处理重复性的文本编辑任务,如字符串替换、行的删除和插入等,特别适合于批量处理大型文本文件。 ###...

    Sed AWK编程指南

    在实际应用中,我们经常需要编写一系列的`sed`命令来完成复杂的文本处理任务。这些命令可以被组织成一个脚本,其执行流程大致如下: 1. **读取输入**:逐行读取文件中的内容。 2. **执行命令**:根据命令对每一行...

    sed手册完整版

    这些功能可以通过一系列命令来实现,并且这些命令可以组合使用以完成更复杂的任务。 **1.4 sed如何工作** sed的工作方式是以行为单位逐行处理文本。它在内部维护了一个模式空间和一个持有空间。模式空间用于存储...

Global site tag (gtag.js) - Google Analytics