1、简介
Linux sed 命令是利用脚本来处理文本文件。
sed 可依照脚本的指令来处理、编辑文本文件。
Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
Sed 处理shell文件及字符串是一个不错的方式,常用的sed命令可以看看这篇博客 https://blog.csdn.net/wdz306ling/article/details/80087889
2、以下整理些sed 隐晦使用方法
-
sed 替换转义字符,特殊字符需要输入 \ 进行转义,如下图需要将1\ 替换为 xxx (sed 's/1\\/xxx/g' tmp.txt)
-
sed 替换换行符为空格 (sed ':a;N;$!ba;s/\n/ /g' tmp.txt)
-
sed 去除字符串两端空格,此操作可以针对文本进行 (sed 's/^ *//g;s/ *$//g')
-
sed 传入参数进行替换 (echo "abcdef" | sed "s/${val}/xxxxx/g")
-
sed 替换多个参数,用 ; 隔开即可 (echo "abcdefg" | sed 's/a/123/g;s/b/123/g')
-
sed 首列插入一列 (sed 's/^/AAAA/g' tmp.txt)
-
sed 尾列插入一列 (sed 's/$/AAAA/g' tmp.txt)
-
sed 大写转小写 (sed 's#.#\u&#g' tmp.txt)
-
sed 大写转小写 (sed 's#.#\l&#g' tmp.txt)
-
sed 替换每个字符(包含空格) (echo "aoo and boo" | sed 's/./xx/g')
-
sed . 类似于sql中的% 下图是把满足a.c这种格式替换, . 在此处匹配 b (echo "abcabcaaa" | sed 's/a.c//g')
-
sed & 代表匹配规则(此处为匹配sed前半部分的匹配规则) (echo "abcabcaaa" | sed 's/a.c/<&>/g')