`
thecloud
  • 浏览: 953802 次
文章分类
社区版块
存档分类
最新评论

Linux文本处理–sed命令编辑器

 
阅读更多

sed编辑器–Stream editor(流编辑器),相对于交互式编辑器如vim无法进行人工交互,需要根据在编辑器处理数据之前事先提供的规则集编辑数据流。

sed编辑器可以根据输入命令行的命令或者存储在文本文件中的命令处理数据。每次从输入读取一行数据,将数据与编辑器提供的命令进行匹配,修改数据流中的数据,然后将心数据输入到stdout。处理完数据流中所有的数据行之后,流编辑器停止。
正是由于按顺序逐行应用命令,因而使得sed编辑器比交互式编辑器要快速。
Usage: sed [OPTION]… {script-only-if-no-other-script} [input-file]…
-n, –quiet, –silent
suppress automatic printing of pattern space
-e script, –expression=script
add the script to the commands to be executed
-f script-file, –file=script-file
add the contents of script-file to the commands to be executed
–follow-symlinks
follow symlinks when processing in place
-i[SUFFIX], –in-place[=SUFFIX]
edit files in place (makes backup if extension supplied)
-l N, –line-length=N
specify the desired line-wrap length for the `l’ command
–posix
disable all GNU extensions.
-r, –regexp-extended
use extended regular expressions in the script.
-s, –separate
consider files as separate rather than as a single continuous
long stream.
-u, –unbuffered
load minimal amounts of data from the input files and flush
the output buffers more often
–help display this help and exit
–version output version information and exit
If no -e, –expression, -f, or –file option is given, then the first
non-option argument is taken as the sed script to interpret. All
remaining arguments are names of input files; if no input files are
specified, then the standard input is read.

1. 直接在命令中定义编辑器命令

echo “This is a test” | sed ‘s/test/big test/’

输出This is a big test
上面的例子只是编辑了一行数据,下面看编辑文本文件的例子。
文本文件的名称为data

sed ‘s/a/an/’ data

将文本文件中的a替换成an
2. 在命令行使用多个编辑器命令
如果使用多个编辑器命令,则需要使用-e选项。

sed -e ‘s/This/That/; s/a/an/’ data

3. 从文件读取编辑器命令

如果命令选项规则比较多,可以将这些规则放到文件中,并且使用-f选项。

sed -f script data

分享到:
评论

相关推荐

    快速理解linux流编辑器sed命令

    ### 快速理解 Linux 流编辑器 sed 命令 #### 一、sed 命令简介 `sed` 是 `stream editor` 的缩写,作为一种非交互式的流编辑器,它主要用于文本数据的过滤和转换。不同于 `vi` 或 `vim` 这类编辑器,`sed` 不会...

    Linux教程-linux文本处理-sed.docx

    sed 是一个强大的流编辑器,主要用于文本处理。它可以从文件或管道中读取文本,并对其进行处理,然后输出处理后的结果。sed 的工作原理是从文件或管道中读取一行,处理一行,输出一行;再读取一行,再处理一行,再...

    Linux shell 用sed命令在文本的行尾或行首添加字符

    sed 命令是 Linux shell 中的一个流编辑器,可以用来对文本进行各种处理操作,例如,添加、删除、替换文本中的字符。今天我们将讨论如何使用 sed 命令在文本的行尾或行首添加字符。 添加字符到行首 要添加字符到...

    Linux文本处理命令:awk、sed、grep

    Sed是一个流编辑器(Stream Editor),它一次处理文本文件的一行内容,对模式空间(pattern space)中的文本执行一系列编辑操作。Sed通常用于快速编辑文件,尤其是在处理大量数据时,它不会直接修改原文件,而是将...

    Linux下sed命令的用法

    Linux系统下的sed命令是一个流编辑器,它能够对文本文件或标准输入进行处理并输出。sed命令擅长于进行文本的快速查找、替换、删除等操作。本文将详细解读sed命令在Linux环境下的用法,包括其基本语法以及常见用例。 ...

    Linux文本处理命令合集

    ### Linux文本处理命令合集详解 #### diff/patch:查找/修补文本差异 - **diff** 命令用于比较两个文件之间的不同之处。 - `diff version1.txt version2.txt`:简单地列出两个文件之间的不同行。 - `diff -u ...

    LINUX_sed命令详解

    `sed`(流编辑器,Stream Editor)是Linux系统中一个强大的文本处理工具,常用于处理文件或从输入流中过滤数据。它可以在不改变原文件的情况下,对文本进行查找、替换、删除等操作。下面我们将深入探讨sed命令的用法...

    linux一学就会教程vim编辑器、RAID技术、压缩工具、文本处理神器sed

    Linux的文本处理神器sed(Stream Editor)是流式文本编辑器,常用于文本替换、删除、插入等操作。通过正则表达式,sed可以高效地处理大量文本数据,尤其在批处理和日志分析中非常有用。 最后,crontab是Linux的任务...

    Linux主要shell命令、sed、awk使用详解

    sed 编辑器可以对文本进行处理和编辑,sed 编辑器的使用方法非常灵活,可以根据需要进行自定义。 总结来说,本章节主要讲述了 shell 的工作原理、shell 的种类、shell 的一般操作及 Bash 的特性,并对 sed 编辑器和...

    (sed流编辑器与awk文本处理工具)

    sed(stream editor)是一种流编辑器,可以执行文本替换、插入、删除等编辑操作。sed通过指定地址范围和编辑命令来对文本进行批量处理。例如,可以使用sed命令来修改、删除、插入或替换文件中的文本内容。在任务中,...

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

    在Windows环境下,`cmd`命令行工具通常用于执行各种系统级操作,而`sed`(流编辑器,Stream Editor)是Unix/Linux系统中一个强大的文本处理工具,它在Windows下的应用可能需要额外的配置。本篇文章将详细介绍如何在...

    linux命令中Sed各种使用方式

    Sed 命令是一种在线编辑器,它一次处理一行内容。Sed 主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。 替换命令 Sed 的替换命令的语法是 `s[address]s/pattern/replacement/flags`,...

    Linux sed 教学PPT

    在Linux世界中,`sed`(流编辑器,Stream Editor)是一个强大的文本处理工具,它能对输入流(标准输入、文件或管道)进行读取、处理并输出。`sed`广泛应用于文本的查找、替换、删除等操作,尤其在脚本中使用频繁,...

    sed命令大全

    在Linux环境下,sed是一个非常重要的流编辑器,用于对文本进行过滤和转换。本文将详细介绍sed命令的使用,包括各种参数、正则表达式的应用、文件处理技巧等内容。 首先,sed命令的基本结构为:sed [选项]... [脚本]...

    sed很强大的文本操作命令

    不同于其他文本编辑器如vi或emacs,sed主要通过命令行工作,它读取输入流,应用一系列预定义的命令,然后输出结果,而不会直接修改源文件,除非用户明确指定。 #### sed的工作原理 sed按顺序逐行读取文件,对于每...

    Linux Shell脚本编程--sed命令详解.zip_shell sed_命令介绍_脚本 shell

    在Linux系统中,Shell脚本编程是日常自动化任务和系统管理的重要工具,而`sed`(流编辑器,Stream Editor)则是Shell脚本中的一个强大工具。本文将深入讲解`sed`命令的基本概念、功能以及在Shell脚本中的具体应用。 ...

    linux 文本 处理 三剑客 之 sed 命令

    种调用sed的方式3.1 在命令行调用sed3.2 **==-e在一个命令行调用多个编辑器==**3.3 **==-f 在文件中调用编辑器==**3.4 s替换命令3.5脚本替换中的几个替换标记3.5 行寻址3.6 组合命令3.7 正则表达式3.8 删除行3.9 ...

    5.4: 正则表达式 、 sed基本用法 、 sed文本块处理.docx

    sed 命令是一个流编辑器,可以对文本文件进行处理。sed 命令可以用来删除、替换、添加文本。 2.1 使用 sed 命令进行文本处理 sed 命令可以用来删除指定的文本行,例如: ``` [root@svr5 ~]# sed '/^#/d' /etc/...

    实验86-Linux命令:sed命令1

    实验86主要介绍了Linux中的`sed`命令,这是一个强大的流编辑器,常用于文本处理和自动化任务。`sed`的工作原理是读取输入文件的一行并将其放入模式空间,然后对模式空间中的内容进行一系列指定的操作,最后将处理...

    linux sed命令详解.docx

    sed 命令是 Linux 中的一种在线编辑器,它可以处理文本文件,并提供了许多功能强大的编辑功能。sed 命令一次处理一行内容,将当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用 sed 命令...

Global site tag (gtag.js) - Google Analytics