Antworten:
-p
Verarbeitet die Eingabe ohne weitere Optionen zeilenweise. Nach dem darf keine Zeile mehr stehen \n
. Sie müssen das Datensatztrennzeichen ändern:
perl -i~ -0pe 's/ab\nba/a a/' file.txt
-i~
ändert die Datei "an Ort und Stelle" und hinterlässt ein Backup (benannt file.txt~
)-0
macht das Zeichen \0
zum Trennzeichen für Eingabesätze. Das Wichtigste ist, dass es in der zu ersetzenden Zeichenfolge nicht vorkommt, sodass es nie nur einen Teil davon liest.-p
Liest die Datei Datensatz für Datensatz und führt nach jedem Lesen den Code aus und gibt die Standardvariable aus $_
-e
Führt nur den Code ein.