sed介绍

grep 只能过滤文件内容,sed既能过滤文件内容同时还能对文件内容进行修改.  sed 算是一种编程语言,它有自己的固定语法.

sed是一种行编辑器,sed会在内存中开辟一块独立的空间(模式空间),每次读取磁盘文件中的一行调入内存空间并且默认自动打印到屏幕

sed基本语法

1. sed  [option]   'script'  file

script : "地址命令addresscmd"

cmd: p   d  a  i   c  w r  =

sed命令实例

1.sed -n '/^root/p' /etc/passwd

2.  sed -n '/^root\>/p' /etc/passwd

3.   sed   -n   "1~3p"    f1

4.   sed   -n   '2!p"        f1

5.  sed  -r   's/(root)/admin\1/g'      /etc/passwd

6.  sed  -r    's/(.*)/\1edu/'              /etc/passwd

7. sed   -r    's/(.*)/edu\1/'              /etc/passwd

8. sed -r 's*/(bin/bash)$*/s\1*'       /etc/passwd

9.sed -r '/GRUB_CMDLINE_LINUX/s/(.*)"$/\1 XYZ"/' /etc/default/grub 或者 sed -r '/GRUB_CMDLINE_LINUX/s/"$/ xyz"/' /etc/default/grub

10.使用正则表达式表示整行字符同时分割并且取到相应的字符串

正则表达式  (.*inet)(.*)(netmask.*)表示包含ip地址的整行字符串

把整行字符串分组分割成三个部分.可以取到任意分组中的字符串.

11.删除单行注释符号   找到符号用空来替代

sed    '/^#NameVirtualHost/s/#//'          /etc/httpd/conf/httpd.conf

12.删除多行的注释符号

sed '/^#VirtualHost/,/^<\/VirtualHost/s/#//' /etc/httpd/conf/httpd.conf

/^#VirtualHost/         匹配到的开始行

/^<\/VirtualHost/        匹配到的结束行

对开始行和结束行中的所有行进行操作

13.    echo "/etc/sysconfig/network/" | sed -r 's/(.*\/)([^/]+\/?)/\2/'

echo "/etc/sysconfig/network/" | sed -r 's/(.*\/)([^/]+\/?)/\1/'

sed的高级语法

sed 命令包含两个操作空间

1. 模式空间          默认只能包含一行的文本内容   相当于正在处理数据的空间

2. 保持空间          相当于一个小仓库,用来存储暂时在模式空间中没有处理完成的数据.

[root@centos7 boot]# seq 10 | sed -n 'n;p'
   2
   4
   6
   8
   10

sed '1!G;h;$!d'  file  '1!G;  h;   $!d' 相当于通过;号把这个命令分成了3个脚本.sed读取文件的每一行文本内容依次执行这三个脚本命令.

sed 'N;D'  file

[root@centos7 boot]# seq  5 | tac

5

4

3

2

1

倒序内容命令

1. ls *.rpm | rev | cut -d -f2 | rev | sort | uniq -c

tac 把整个文件的行倒叙显示
     rev 按每行字符内容倒叙显示

[root@centos7 ~]# seq 10 | xargs -n2
  1 2
  3 4
  5 6
  7 8
  9 10

sed 操作命令的更多相关文章

  1. linux的sed命令(一)

    转自:https://www.cnblogs.com/ginvip/p/6376049.html Sed 简介 sed 是一种新型的,非交互式的编辑器.它能执行与编辑器 vi 和 ex 相同的编辑任务 ...

  2. linux命令总结sed命令详解

    Sed 简介 sed 是一种新型的,非交互式的编辑器.它能执行与编辑器 vi 和 ex 相同的编辑任务.sed 编辑器没有提供交互式使用方式,使用者只能在命令行输入编辑命令.指定文件名,然后在屏幕上查 ...

  3. linux 三大利器 grep sed awk sed

    sed主要内容和原理介绍 sed 流处理编辑器 sed一次处理一行内容,读入一行处理一行 sed不改变文件内容(除非重定向) sed 命令行格式 $ sed [options] 'command' f ...

  4. linux---(6/27)tr命令和sed命令详解

    Tr命令: tr是简单的单个“字符”处理工具,而sed是功能非常强大的“字符串”处理工具. 用于查询,字符串2用于处理各种转换.tr刚执行时,字符串1中的字符被映射到字符串2中的字符,然后转换操作开始 ...

  5. sed命令用法

    Sed 简介 sed 是一种新型的,非交互式的编辑器.它能执行与编辑器 vi 和 ex 相同的编辑任务.sed 编辑器没有提供交互式使用方式,使用者只能在命令行输入编辑命令.指定文件名,然后在屏幕上查 ...

  6. sed 流编辑命令

    1.命令功能 sed非交互式的流编辑器,sed不会修改源文件内容,除非重定向来保存输出结果:默认情况下所有的输出行都将被打印到屏幕上. 2.语法格式 sed  [option]  {script-on ...

  7. sed命令入门

    什么是sed sed是一种流处理编辑器,可以分割.查找.替换文本. sed命令的处理流程:行处理 Created with Raphaël 2.1.0在shell中执行sed文本或管道输入读入到模式空 ...

  8. linux sed命令(擅长输出行)(转)

    linux命令总结sed命令详解 Sed 简介 sed 是一种新型的,非交互式的编辑器.它能执行与编辑器 vi 和 ex 相同的编辑任务.sed 编辑器没有提供交互式使用方式,使用者只能在命令行输入编 ...

  9. 【三剑客】sed命令

    1. Sed 简介 sed 是Stream Editor(流编辑器)的缩写,是操作.过滤和转换文本内容的强大工具.常用功能有增删改查,过滤,取行.   sed 是一种新型的,非交互式的编辑器. 它能执 ...

随机推荐

  1. SpringBoot------Maven Install报错

    报错信息: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin::compile (default-compil ...

  2. 【转载】eclipse常用插件在线安装地址或下载地址

    一,反编译插件: A.Jadclipse 1.打开eclipse增加站点:http://jadclipse.sf.net/update,在线安装好JDT Decompiler 3.4.0 2.http ...

  3. 安卓手机优化 ROOT自启动管理 + 电量管理

    一.KingRoot + 净化大师 KingRoot 主要完成ROOT 和 自启动软件的管理 这里禁止的自启动管理 对于有些软件是不太管用 比如美团 手机百度等 净化大师 主要完成 高电量的软件优化 ...

  4. DAX Editor VSIX project

    DAX Editor is a Visual Studio extension that implements a language service for DAX language for SQL ...

  5. MySQL 之 单表查询

    一.简单查询 -- 创建表 DROP TABLE IF EXISTS `person`; CREATE TABLE `person` ( `id` int(11) NOT NULL AUTO_INCR ...

  6. js中parseInt和Number

    昨天在项目中遇到一个问题,有关字符串准换成数字的问题,具体如下: 页面中<input type="number" id="bankNum" ng-mode ...

  7. 设计模式学习--Prototype

    What Prototype:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. Why Prototype适用于在一个类的实例有几种不同的状态组合的一种时,建立相应的数目的原型并克隆她 ...

  8. win怎么设置最快捷的下滑关机

    win怎么设置最快捷的下滑关机 1.在C:\Windows\System32下找到SlideToShutDown.exe文件发送一份到桌面快捷方式 2.右键此快捷方式--属性--更换图表--更换一个自 ...

  9. 标准库random

    pseudo-random number generators for various distributions. Almost all module functions depend on the ...

  10. WebSphere Application Server V8.5.5.0

    Downloadable files Abstract IBM WebSphere Application Server Version 8.5.5 Refresh Pack for all plat ...