8
我在Unix上有一个文本文件file1.txt
。我想生成另一个文件file2.txt
,其中我将apple-pie
的所有匹配项替换为apple_pie
。我可以使用什么命令?替换文件中的字符串Unix
我在Unix上有一个文本文件file1.txt
。我想生成另一个文件file2.txt
,其中我将apple-pie
的所有匹配项替换为apple_pie
。我可以使用什么命令?替换文件中的字符串Unix
使用sed
做全局替换上file1.txt
和输出重定向到file2.txt
:
sed 's/apple-pie/apple_pie/g' file1.txt > file2.txt
sed
比awk
更好的性能,但都将这个找工作和替换。 Reference
如果你把命令的脚本(例如,KSH,SH),那么这里的语法是:
awk '{gsub(/apple-pie/,"apple_pie");print}' "file1.txt" > "file2.txt"
sed -e 's/apple-pie/apple_pie/g' "file1.txt" > "file2.txt"