использование 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

Я не уверен, как выбрать весь из, равняется знакам только вместо первого.Спасибо!

3
задан 26 February 2015 в 00:10

2 ответа

Необходимо использовать эти g флаг, чтобы сделать замена g lobal. Иначе это просто происходит однажды.

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

Между прочим, sed может читать из файла, таким образом, Вам не нужно cat здесь:

sed 's/=//g' FixMeWithSed.txt > FileFixedWithSed.txt
5
ответ дан 1 December 2019 в 15:25

Можно использовать

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

для замены = на том же файле, не создавая новый. Иначе можно даже использовать

tr -d '=' < file.in > file.out
1
ответ дан 1 December 2019 в 15:25

Другие вопросы по тегам:

Похожие вопросы: