linux sed 替换
作者&投稿:检质 (若有异议请与网页底部的电邮联系)
Linux sed 命令是利用脚本来处理文本文件。
sed 可依照脚本的指令来处理、编辑文本文件。
Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
语法
参数说明:
regular_express.txt 文件内容如下:
利用 sed 将 regular_express.txt 内每一行结尾若为 . 则换成 !
:q:q
利用 sed 直接在 regular_express.txt 最后一行加入 # This is a test:
由於 $ 代表的是最后一行,而 a 的动作是新增,因此该文件最后新增 # This is a test!
sed 的 -i 选项可以直接修改文件内容,这功能非常有帮助!举例来说,如果你有一个 100 万行的文件,你要在第 100 行加某些文字,此时使用 vim 可能会疯掉!因为文件太大了!那怎办?就利用 sed 啊!透过 sed 直接修改/取代的功能,你甚至不需要使用 vim 去修订!
sed -i 常见用法(直接对文本文件进行操作的)
替换掉每行的第一个字符串
替换掉所有的字符串 sed -i 's/原字符串/新字符串/g' file
去掉 “行首” 带“@”的首字母@
特定字符串的行前插入新行
特定字符串的行后插入新行
特定字符串的删除
卜皆希罗: sed -e 's/^.*$/string/' filename 其中string是你要替换的字符串 以上命令是把所有行都替换成某个字符串,如果你要只替换某一行,可以在前面加上行号:sed -e '3s/.*$/string/' ......
杂多县18552132754: Linux中sed命令查找替换某行中的字符 - ?
卜皆希罗: sed '/minlength/s/[0-9]\+/30/'
杂多县18552132754: linux sed正则替换 方法 - ?
卜皆希罗: 在替换命令中是“组”的用法(正则表达式中也是这样),后面可以用\1 \2 等来分别引用前面括起来的部分.希望对你有所帮助!
杂多县18552132754: linux中sed命令如何运用'\ ' 反斜杠 - ?
卜皆希罗: 路径"../syslog/tmp/"替换为"/data/syslog/tmp”首先要搞清楚,转义符\的作用是消除有特殊含义字符的特殊意义,使其还原为普通字符. sed -i 's/\.\.\/syslog\/tmp\//\/data\/syslog\/tmp/' file.ini 点号.在正则表达式中有其特殊含义(表示任意一个字...
杂多县18552132754: linux sed 如何替换字符串中的反斜杠\ - ?
卜皆希罗: 在字符替换中,可能会遇见引号,“/”等的替换,这时应该注意,sed的命令原型是:sed -i "s/oldstring/goalstring/g" file 如果一个路径是data/path/abc,现在要将此路径换成一个字符串cde 但是这时跟在s后边的其实是分隔符,用以将...
杂多县18552132754: linux替换文件命令 - ?
卜皆希罗: 1、这么就用不会提示了:# \cp -rf 2、 原因: # vi ~/.bashrc 如果你看到如下内容,以下命令都会用别名执行了,就是说自动加了 -i 参数:alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' 为了让复制和移动大量文件去覆盖目标时,不会产生一个个...
杂多县18552132754: linux上如何使用sed命令替换xml中内容 - ?
卜皆希罗: [root@11~]# echo "aaa<test>12" aaa<test>12 [root@11 ~]# echo "aaa<test>12" | sed 's/<test>12/0/g' aaa0这样就可以了
杂多县18552132754: Linux sed 替换时超过200就不再替换 - ?
卜皆希罗: 匹配条件只能替换文件中的stu1.因为Linux sed匹配的是每一行的所有stu1,所以只把文件里stu1开头的行处理了,而stu2开头的或stu后面跟着非1字符的,都没有被替换,因为都不匹配,结果就是stu超过200就不替换了.
杂多县18552132754: linux 的sed命令解释 sed ':t;N;s/\n/,/;b t' 将换行符换成逗号?
卜皆希罗: :t 定义label "t" b t 转到label "t" 继续执行 N 先读入一行到sed的模板空间,加个换行符(\n),再向sed模板空间追加下一行(之后sed 对模板空间中的内容执行s/\n/,/替换,并显示替换后的内容)
杂多县18552132754: shell 中用sed作替换操作怎么使用变量 - ?
卜皆希罗: 用双引号就行了(单引号会屏蔽 $ 对shell变量的取值功能) sed "s/$bsed/$a/g" filename >result