Antworten:
Sie müssen den Backslash (Escape-Zeichen) umgehen, um ihn zu ersetzen. Und wenn Ihre Version von sed dies unterstützt, führt die Option -i (an Ort und Stelle) die Änderungen an Ihrer Datei durch, ohne dass Sie eine Zwischendatei angeben müssen. Wenn Sie die Option -i verwenden, beachten Sie, dass eine (empfohlene!) Sicherungsdateierweiterung akzeptiert wird. Wenn Sie jedoch keine angeben, ist es hilfreich, Ihrem Befehl sed -e voranzustellen, um sed darüber zu informieren, dass Sie nicht verwenden eine Sicherungsdateierweiterung.
Alles zusammen:
# Run sed to remove lines with backslash in them
$ sed -i -e '/\\/d' pdataf.txt
# Cat your file to confirm edits
$ cat pdataf.txt
apple
cat
egg