1.在特定行前后插入特定内容
str1="public static Config=array("
str2=" 'public var_dump(__LINE__)' => 'var_dump(__LINE__)'"
行后插入
sed -i "/$str1/a\\$str2" file
行前插入
sed -i "/$str1/i\\$str2" file
正常的插入表达式为:sed -i "/$str1/a\$str2" file
sed -i "//a\\":a后面的第二道斜杠是转义字符,将‘’进行转义
2.将字符串addd替换为hot:
(1)特定文件:
sed -i "s/addd/hot/g" file
:%s/addd/hot/g
(2)将所有文件中的字符串替换(将当前目录下所有文件中字符串替换):
sed -i "s/addd/hot/g" `grep -rl addd ./`
grep -rl addd ./ | xargs sed -i "s/addd/hot/g"
3.grep 简单用法:
(1)grep --help (查看所有命令)
grep -r :递归查找当前目录下所有文件 grep -r "abss"
grep "adss" -rl:列出所有含有字符串adds的文件,经常作为sed的参数通过xargs
grep "adss" -rn :列出每个文件中adds中字符串的个数和文件名
grep "adds" -r