abcABC|abcABC
abcABC|abcABC
abcABC|abcABC
$ sed -e 's/a/A/' sed 替换.txtAbcABC|abcABC
AbcABC|abcABC
AbcABC|abcABC
$ sed -e 's/a/A/g' sed replacement.txtAbcABC|AbcABC
AbcABC|AbcABC
AbcABC|AbcABC
$ sed -i 's/a/A/g' sed replacement.txt
$ cat sed 替换 .txtAbcABC|AbcABC
AbcABC|AbcABC
AbcABC|AbcABC
$ sed -i 's/b/B/g' ./*.txt
$ cat sed 替换 .txtABcABC|ABcABC
ABcABC|ABcABC
ABcABC|ABcABC
$ sed -i 's/A/a/g' `grep A -rl --include="*.txt" ./`说明:grep命令中:选项`r`表示搜索所有子目录` l`表示只列出符合条件的文件名,用于传递给sed命令进行操作。 `--include="*.txt"` 表示仅搜索以 .txt 结尾的文件
$ sed -i.bak 's/c/C/g' *.txt
$ cat sed 替换 .txtABCABC|ABCABC
ABCABC|ABCABC
ABCABC|ABCABC--备份文件sed替换.txt.bak--如果不需要备份文件,使用空字符串取消备份,或者留空
$ sed -i '' 's/c/C/g' ./*.txt
$ sed -i.bak 's/a/A/g' `grep a -rl --include="*.txt" ./`说明:grep命令中:选项`r`表示搜索所有子目录`l`表示只列出符合条件的文件名,用于传递给sed命令进行操作。 `--include="*.txt"` 表示仅搜索以 .txt 结尾的文件
i
用于直接替换i.bak
备份文件动作说明:
a:添加,a后面可以跟字符串,这些字符串会换行(当前下一行)~
d:删除,因为是删除,因此 d 后面通常不跟任何内容;
i:插入,i后面可以跟字符串,这些字符串会出现在新行(当前上一行);
s:更换,可以直接进行更换工作!通常这个动作可以与常规符号配对!比如1,20s/old/new/g就是它了!
--a:新建,在“sed replacement”文件第1行后添加一行,并将结果输出到标准输出
$ sed -i 1a\换行 sed replacement.txt 结果:
ABCABC|ABCABC
新队
ABCABC|ABCABC
ABCABC|ABCABC--d:删除,列出sed替换的.txt内容,同时删除第2行! $ sed -i '2d' sed replacement.txt
ABCABC|ABCABC
ABCABC|ABCABC
ABCABC|ABCABC--i: 插入,结合$a添加,使用sed直接添加 # 这是一个测试:在sed replacement.txt的最后一行$ sed -i '$a #这是一个测试' sed Replace.txtABCABC|ABCABC
ABCABC|ABCABC
ABCABC|ABCABC
#这是一个测试