sed的惯常用法

1:注释掉某一行
这个经常会遇到的,把配置文件里某一行注释掉。让他不起作用。
sed -i -e ’121 s/^/#/’ /usr/local/apache2/conf/httpd.conf
上面一行命令的意思,就是把121行注释掉。
sed -i -e ’121 s/^/#/’ -i -e ’122 s/^/#/’ /usr/local/apache2/conf/httpd.conf
这个就是把121,122行注释掉。

2:把注释#去掉,让这行起作用
sed -i ‘s/#ServerName www.example.com:80/ ServerName www.example.com:80/g’ /usr/local/apache2/conf/httpd.conf
这个命令就是把这行的#去掉。其实就是一个替换的过程

3:在某行的位置插入一行

如果只是在一个文档后面追加一行,那很简单。>> 就可以搞定。不过如果是在指定的某一行里插入。
sed -i "8 s/^/alias vi=’vim’/" /root/.bashrc
就是在第8行插入 alias vi=’vim’

4:如何插入一行,包括特殊字符 /
sed -i "58 s/^/AddType application\/x-httpd-php .php .phtml/" httpd.conf
这样就让apache支持php,简单多了。
下面的用法还没有测试。改天测试

Sed:
1、删除行首空格
sed ‘s/^[ ]*//g’ filename
sed ‘s/^ *//g’ filename
sed ‘s/^[[:space:]]*//g’ filename

2、行后和行前添加新行
行后:sed ‘s/pattern/&\n/g’ filename
行前:sed ‘s/pattern/\n&/g’ filename
&代表pattern

3、使用变量替换(使用双引号)
sed -e "s/$var1/$var2/g" filename

4、在第一行前插入文本

sed -i ’1 i\插入字符串’ filename

5、在最后一行插入
sed -i ‘$ a\插入字符串’ filename

6、在匹配行前插入
sed -i ‘/pattern/ i "插入字符串"’ filename

7、在匹配行后插入
sed -i ‘/pattern/ a "插入字符串"’ filenam

时间: 2024-08-27 15:58:28

sed的惯常用法的相关文章

sed命令的用法

sed命令的用法 -n:选项不打印文件的所有行 [[email protected] ~]# sed '1'p 1                  //不带-n选项,sed会把所匹配的行打印出来,  root:x:0:0:root:/root:/bin/bash             //所要求的行  root:x:0:0:root:/root:/bin/bash              // 并且打印整个文本文件  bin:x:1:1:bin:/bin:/sbin/nologin syn

sed的模式匹配用法探讨

[[email protected] Desktop]# cat sunsky a b c d e f [[email protected] Desktop]# cat sunsky|sed '1,2d'|sed '1,2d' e f [[email protected] Desktop]# cat sunsky|sed -e '1,2d' -e '1,2d' d e f 问题: sed中-e的意思是直接在指令列模式上进行sed的动作编辑按照,那么按照-e的含义,上下两组命令的执行结果应该相同,

sed的基本用法

一.sed基本简介     sed是每次读取文件一行内容到一个缓冲区中(模式空间)进行处理,这个处理是指依次调用script中的命令对模式空间中的内容处理.注意是对模式空间的内容进行处理而非原文件,如需对原文件,则需使用选项. 二.用法 sed基本用法及选项: sed的基本用法:         sed- stream editor for filtering and transforming text         sed [OPTION]...{script-only-if-no-othe

sed命令基础用法

    sed(Stream EDitor)简介 sed是一个流编辑器编辑器,本身是一个管道命令,主要以行为单位处理文本文件,可以将数据进行替换.删除.新增.选取等特定工作:sed并不会处理文本文件本身,而是每当处理一个文件时,按顺序逐行读取到模式空间(内存)中,而后在模式空间中完成编辑,把编辑的结果输出到屏幕上,接着处理下一行,反复操作,直到文件结尾. 模式空间:将读取的内容放在内存中的一块区域编辑,这些内存空间就称为模式空间 格式: sed [options]    'Address Com

sed的标签用法

今天更新区组列表文件,其中F=16的状态是隐藏的状态,玩家是看不到的,其他F=0,添加维护中是需要将S=0变为S=10,F=0,而同步后登录游戏发现区组列表中隐藏的测试区组也出现了并且是维护的状态! 查看脚本,发现用sed将所有的F全部=0了,没有考虑隐藏F=16的情况. <Server N="测试" A="xx.xx.xx.xx" P="12345" S="0" F="16" /> sed -

sed和awk用法

正则表达式的语法: .一点代表一个字符 . 代表任意的字符. 例1:样式 .T. ,代表3 个字符,中间是T,左右两边是任意的一个字符. 例2:... 代表字符长度是3 的字符串.若想比对 . 这个字符本身,需加上转义字符(\),写成\.. 例如:样式data\....代表data.后接3 个字符,如data.txt.data.cfg.data.123 等,都符合这个样 式,但data1234 就不符合了,因为4 个点最左边的那个点,已经用\转义其特殊意义,还原为. 这个字符本身,因此,\...

正则表达式和sed命令的用法

一.            正则表达式:   正则表达式(或称Regular Expression,简称RE)就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式. 该模式描述在查找文字主体时待匹配的一个或多个字符串. 正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配.简单的说,正则表示式就是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表示式通过一些特殊符号的辅助,可以让使用者轻易的达到搜寻/删除/取代某特定字符串的处理程序.vim.gre

Linux三剑客之sed的基本用法介绍

[介绍] sed是一款强大的非交互式的文本编辑器,可以对文件文本进行增删改查的相关操作,本文主要是讲解以下sed的基本用法. [常用选项] -e 下一个参数为一个sed指令,一般只会用于同一行有多个sed的时候 -f 后面跟保存了sed指令的文件 -i 直接对内容进行修改,不加i时只是预览,并不做实际改动 -n 取消默认输出,只输出处理过的行. [编辑命令] a 追加·向匹配行后面插入内容 c 更改·更改匹配行的内容 i 插入·向匹配行前插入内容 d 删除·删除匹配的内容 s 替换·替换匹配到的

sed及grep用法详解

在linux系统有被称为文本处理三剑客grep,sed,awk. 今天与大家分享的就是gerp和sed处理工具,至于awk,我将会在晚些的时间与大家分享,在分享grep和sed之前我先要和大家说说正则表达,正则表达是什么呢,正则表达式就像是三剑客手里的剑,没有剑哪还能称的上什么剑客,所以我们要先了解以下正则表达式的简单用法. 什么是正则表达式: "正则表达式是描述一组字符窜特征的模式,用来匹配特定的字符串."--Ken Thompson 基本正则表达式的元字符有以下这些: . :匹配任