
Ich habe eine Frage zu dem sed
Befehl. Ist es möglich, ein Zeichen (oder eine Gruppe von Zeichen) zwischen einem Leerzeichen und einem ausgewählten Zeichen zu entfernen? Wenn ich eine Liste mit mehreren Textzeilen habe, wie zum Beispiel:
a = 5 * x + 3 n\exit>
a = 5 * x + 7 abndc\exit>
… usw. usw.
zu bekommen
a = 5 * x + 3
a = 5 * x + 7
usw. usw.
Befehl verwenden sed
?
Entfernen Sie also grundsätzlich alles aus dem Raum 3
nach>
Antwort1
2 Ansätze
alles bis zum letzten Leerzeichen beibehalten:
sed 's/\(.*\) .*/\1/'
Suchen Sie am Ende der Zeile nach einem Leerzeichen und einigen Nicht-Leerzeichen und entfernen Sie diese
sed 's/ [^ ]*$//'
Antwort2
sed -r 's/(.*)( \S+>)/\1/' file
a = 5 * x + 3
a = 5 * x + 7