Ich habe eine txt-Datei
123
456
789
456
123456
Ich möchte bestimmte Zeichen aus der Datei löschen, z. B. (123). Ich habe es mit versucht
$ sed -i '/123/d' dummy.sh
$ vi dumm.txt
456
789
456
Im folgenden Befehl werden beim Ausführen beide Wörter ( 123
und 123456
) gelöscht, aber ich muss nur 123
aus der Datei löschen
$ sed -i 's/123//g' dummy.sh
$ vi dumm.txt
456
789
456
456
Wenn ich den folgenden Befehl ausführe, 123
wird der durch null ersetzt.
Kann jemand sagen, wie man eine ganze Zeile löscht, wenn sie nur eine bestimmte Nummer enthält?
text-processing
sed
Rak Kundra
quelle
quelle
grep
wenn Sie so verwenden. Aber es kann für einige Aufgaben aufgrund seiner Optionen überlegen sein:grep -xv 123
Antworten:
Es ist unklar, ob Sie versuchen, eine ganze Zeile
123
durch eine leere Zeile zu löschen oder durch eine leere Zeile zu ersetzen. Wie auch immer, fügen Sie Ihrem Muster einfach Anker am Anfang^
und Ende$
der Linie hinzu:quelle