使用 sed 从文件中删除等号

使用 sed 从文件中删除等号

我正在尝试使用 sed 从该文件中删除等号并将其通过管道传输到一个新文件:

I am a file to be edited.
A unique file with my own words.
T=h=e=r=e a=r=e i=s=s=u=e=s w=i=t=h t=h=i=s l=i=n=e

我试过了cat FixMeWithSed.txt | sed 's/=//' > FileFixedWithSed.txt但它只替换了第一个等号。

I am a file to be edited.
A unique file with my own words.
Th=e=r=e a=r=e i=s=s=u=e=s w=i=t=h t=h=i=s l=i=n=e

我不知道如何选择所有等号,而不是只选择第一个等号。谢谢!

答案1

你必须使用g标志来做G全局替换。否则,它只会发生一次。

cat FixMeWithSed.txt | sed 's/=//g' > FileFixedWithSed.txt

顺便说一句,sed可以从文件中读取,所以你不需要cat这里:

sed 's/=//g' FixMeWithSed.txt > FileFixedWithSed.txt

答案2

您可以使用

sed -i "s/=//g" file.in

替换同一文件上的 =,而无需创建新文件。否则,你甚至可以使用

tr -d '=' < file.in > file.out

相关内容