sed 查看/编辑文件内容
参数介绍:
-i :操作后应用保存到原文件(如果不加这个参数,那么任何修改都不会影响原文件里的内容,只会把结果输出)
-e :仅显示处理后的结果
# 更多的命令可以用 sed --help 来查看。
使用示例:
# 查看 log.txt 第3行的内容
sed -n '3p' log.txt
# 查看 log.txt 第2-8行的内容
sed -n '2,8p' log.txt
# 删除 log.txt 第1行(首行)
sed -i '1d' log.txt
# 删除 log.txt 第3-7行
sed -i '3,7d' log.txt
# 删除 log.txt 最后1行(尾行)
sed -i '$d' log.txt
# 删除 log.txt 中所有空白行
sed -i '/^$/d' log.txt
# 删除 log.txt 开头是 test的行
sed -i '/^test/'d log.txt
# 删除 log.txt 结尾是 test的行
sed -i '/test$/'d log.txt
# 删除 log.txt 文件中所有包含 233内容的行
sed -i '/233/d' log.txt
# 删除 log.txt 文件中第一个 233文本
sed -i 's/233//' log.txt
# 删除 log.txt 文件中所有 233文本(g 代表操作所有匹配规则的文本)
sed -i 's/233//g' log.txt
# 删除 log.txt 文件中所有 第5个233文本(5g 代表第五个匹配规则的文本)
sed -i 's/233//5g' log.txt
# 替换 log.txt 文件中第一个 233为666
sed -i 's/233/666/' log.txt
# 替换 log.txt 文件中所有 233为666(g 代表操作所有匹配规则的文本)
sed -i 's/233/666/g' log.txt
# 替换 log.txt 文件中所有 /ver 为 test/,因为有斜杠,所以需要使用 \ 转义,但是单引号会导致无法转义,所以要改成双引号。
sed -i "s/\/ver/test\//" log.txt
# 显示 log.txt 文件中的奇数行或偶数行
sed -n 'p;n' log.txt #奇数行
sed -n 'n;p' log.txt #偶数行
# 更多的命令可以用 sed --help 来查看。