`
足至迹留
  • 浏览: 495837 次
  • 性别: Icon_minigender_1
  • 来自: OnePiece
社区版块
存档分类
最新评论

<linux-sed> sed基本用法

阅读更多
1.简介
sed全称是Stream Editor,是非交互式的编辑器。它不会修改原文件,除非使用shell重定向来保存结果, 或者可以指定-i选项来在线修改文件,这样就会改变原文件,升级脚本通常用-i选项。默认情况下,所有的输出行都被打印到屏幕上。sed 本身也是一个管线命令,可以分析 standard input 。

sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:
(1)首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),(2)然后处理临时缓冲区中的行,(3)完成后把该行发送到屏幕上。
sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。

2. 定址
在使用sed的过程中,我们经常会听到“定址”,那么什么是“定址”呢?
定址用于决定对哪些行进行编辑。地址的形式可以是数字、正则表达式、或二者的结合。如果没有指定地址,sed将处理输入文件的所有行。
比如:
1)地址是一个数字则表示行号;是“$"符号,则表示最后一行。
sed -n '3p' datafile   #只打印第三行  


2)只显示指定行范围的文件内容
sed -n '100,200p' mysql_slow_query.log  # 只查看文件的第100行到第200行
 

3)地址是逗号分隔的,那么需要处理的地址是这两行之间的范围(包括这两行在内)。范围可以用数字、正则表达式、或二者的组合表示。
•  sed '2,5d' datafile  #删除第二到第五行 
•   
•  sed '/My/,/You/d' datafile  #删除包含"My"的行到包含"You"的行之间的行 
•   
•  sed '/My/,10d' datafile  #删除包含"My"的行到第十行的内容

3. sed命令与选项
调用sed命令有两种形式:
sed [options] 'command' file(s)
sed [options] -f scriptfile file(s)

对于第一种形式,具体调用一般是:
sed [选项][定址[命令]] file(s)

命令和选项如下:
3.1、sed命令



3.2、sed选项


补充:
在sed的命令行中引用shell变量时要使用双引号,而不是通常所用的单引号。这根grep一样,双引号会获取变量的值,而单引号只会把变量当做普通字面字符。

更多可以参考:
http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
http://blog.csdn.net/engledb/article/details/19623087
http://www.iteye.com/topic/587673
http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
《鸟哥的linux私房菜 基础篇》第12章
  • 大小: 41.9 KB
  • 大小: 92.6 KB
  • 大小: 264 KB
0
0
分享到:
评论

相关推荐

    linux-Sed命令详解.zip

    在“linux-Sed命令详解”文档中,我们将深入探讨Sed命令的基本用法和高级技巧。 首先,Sed工作基于数据流的概念,它可以读取标准输入或者指定文件的内容,按照指定的命令对每一行进行处理,然后将结果输出到标准...

    LINUX与UNIX_SHELL编程指南2

    176&lt;br&gt;&lt;br&gt;18.4.3 提示键入y或n 177&lt;br&gt;&lt;br&gt;18.4.4 case与命令参数传递 ...使用for循环备份文件 183&lt;br&gt;&lt;br&gt;18.5.7 多文件转换 183&lt;br&gt;&lt;br&gt;18.5.8 多sed删除操作 184&lt;br&gt;&lt;br&gt;18.5.9 循环计数 184&lt;br&gt;&lt;br&gt;18.5.10 for...

    Linux-02sed.ppt

    什么是sed:主要介绍什么是sed工具,sed工具的主要操作、工作方式以及地址表示方法,在sed命令中使用正则表达式等。 sed命令的常用操作:主要介绍sed命令的注释方法,打印文本,替换文本,删除文本,追加文本,插入...

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

    sed 的基本用法格式为:sed [option]... 'script;script;...' inputfile...。 sed 的常用选项包括: * -n:不输出模式空间内容到屏幕,即不自动打印 * -e:多点编辑 * -f /PATH/SCRIPT_FILE:从指定文件中读取编辑...

    Linux宝库 - sed用法

    将介绍执行命令列上的编辑指令 、sed 编辑指令、执行档案内的编辑指令、执行多个档案的编辑、及 执行 sed 输出控制。

    LINUX与UNIX SHELL编程指南

    sed 用法介绍 89&lt;br&gt;10.1 sed怎样读取数据 89&lt;br&gt;10.2 调用sed 89&lt;br&gt;10.2.1 保存sed输出 90&lt;br&gt;10.2.2 使用sed在文件中查询文本的方式 90&lt;br&gt;10.2.3 基本sed编辑命令 90&lt;br&gt;10.3 sed和正则表达式 91&lt;br&gt;10.4 基本...

    Linux Shell编程3/3

    _grep家族&lt;br&gt;|_awk介绍&lt;br&gt;|_sed用法介绍&lt;br&gt;|_合并与分割&lt;br&gt;|_tr用法&lt;br&gt;第三部分登录环境&lt;br&gt;|_登录环境&lt;br&gt;|_环境和shell变量&lt;br&gt;|_引号&lt;br&gt;第四部分基础shell编程&lt;br&gt;|_shell脚本介绍&lt;br&gt;|_条件测试&lt;br&gt;|_控制...

    Linux Shell编程1/3

    _grep家族&lt;br&gt;|_awk介绍&lt;br&gt;|_sed用法介绍&lt;br&gt;|_合并与分割&lt;br&gt;|_tr用法&lt;br&gt;第三部分登录环境&lt;br&gt;|_登录环境&lt;br&gt;|_环境和shell变量&lt;br&gt;|_引号&lt;br&gt;第四部分基础shell编程&lt;br&gt;|_shell脚本介绍&lt;br&gt;|_条件测试&lt;br&gt;|_控制...

    Linux Shell编程2/3

    _grep家族&lt;br&gt;|_awk介绍&lt;br&gt;|_sed用法介绍&lt;br&gt;|_合并与分割&lt;br&gt;|_tr用法&lt;br&gt;第三部分登录环境&lt;br&gt;|_登录环境&lt;br&gt;|_环境和shell变量&lt;br&gt;|_引号&lt;br&gt;第四部分基础shell编程&lt;br&gt;|_shell脚本介绍&lt;br&gt;|_条件测试&lt;br&gt;|_控制...

    LINUX与UNIX_SHELL编程指南1

    sed 用法介绍 89&lt;br&gt;10.1 sed怎样读取数据 89&lt;br&gt;10.2 调用sed 89&lt;br&gt;10.2.1 保存sed输出 90&lt;br&gt;10.2.2 使用sed在文件中查询文本的方式 90&lt;br&gt;10.2.3 基本sed编辑命令 90&lt;br&gt;10.3 sed和正则表达式 91&lt;br&gt;10.4 基本...

    linux shell命令sed的使用方法

    linux shell命令sed的使用方法

    Vim-101-hacks、Sed-and-Awk-101-Hacks、Linux-101-hacks 英文版(高清)PDF

    "Sed-and-Awk-101-Hacks"可能包含如何使用基本的sed命令,如替换、删除、插入行,以及使用地址范围进行特定操作。此外,还可能涉及正则表达式在sed中的应用,如查找和替换模式,以及使用sed进行批量文本编辑。 3. ...

    Linux下sed命令的用法

    本文将详细解读sed命令在Linux环境下的用法,包括其基本语法以及常见用例。 首先,sed命令的基本语法格式为: ``` sed [选项] '脚本' [文件] ``` 其中,选项部分可以用于控制sed的行为,例如-i选项可以用于直接...

    linux 系统 sed 命令使用方法

    ### Linux系统sed命令使用方法详解 #### 一、sed简介 `sed`是Stream Editor的缩写,在Linux系统中是一种非常强大的文本处理工具。它能够按照脚本指令读取输入文件(标准输入或文本文件),对其进行模式匹配、替换...

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

    ### sed使用方法详解 #### 一、sed简介 sed(stream editor)是一种强大的文本处理工具,在Linux和Unix环境中被广泛用于非交互式的...掌握sed的使用方法对于从事Linux系统管理、脚本编写等工作的人来说是非常重要的。

    linux shell sed instead

    sed [选项] [-e &lt;script&gt;] [-f &lt;script_file&gt;] [文本文件] ``` 这里,`-e &lt;script&gt;`用于在命令行中直接指定处理脚本,`-f &lt;script_file&gt;`则是从指定的文件中读取处理脚本。`-h`或`--help`用于显示帮助,`-n`或`--...

    linux sed 常用用法举例01

    先使用`grep`找出包含“pattern”的行,再用`sed`替换其中的“Linux”。 8. **读取外部文件** - `-f`选项可以从外部文件读取命令。 示例: ```bash sed -f commands.sed file.txt ``` 在`commands.sed`中...

    LINUX_sed命令详解

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

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

    实验步骤中,首先要在大数据实验平台上启动实验86,然后按照指导进行实际的`sed`命令操作练习,以熟悉和掌握其使用方法。通过这样的实践,可以加深对`sed`命令的理解,提高在Linux环境中处理文本文件的效率。

Global site tag (gtag.js) - Google Analytics