字符串三剑客: sed
sed
小技巧:
替换字符串:
1
sed 's/old_string/new_string/g' filename
这将在文件中将所有的
old_string
替换为new_string
。删除行:
1
sed '/pattern/d' filename
这将删除包含指定模式的行。
在行首或行尾插入文本:
1
2sed 's/^/prefix/' filename # 在每一行行首添加前缀
sed 's/$/suffix/' filename # 在每一行行尾添加后缀显示特定行或行范围:
1
2sed -n '5p' filename # 显示第5行
sed -n '5,10p' filename # 显示第5到第10行使用变量:
1
2my_variable="new_value"
sed "s/old_value/$my_variable/" filename多个替换:
1
sed -e 's/old1/new1/g' -e 's/old2/new2/g' filename
这可以在同一次
sed
命令中执行多个替换。保留替换前的备份文件:
1
sed -i.bak 's/old_string/new_string/g' filename
-i.bak
将替换前的文件备份为.bak
文件。仅显示匹配部分:
1
sed -n 's/pattern/\1/p' filename
这将仅显示匹配到的部分,使用
\1
表示匹配到的内容。转换大小写:
1
2sed 's/[a-z]/\U&/g' filename # 将小写字母转换为大写
sed 's/[A-Z]/\L&/g' filename # 将大写字母转换为小写\U
和\L
分别用于将后面的文本转换为大写和小写。