Wenn die Eingabe so aussieht:
1
2 4 5 6 7 19
20
22
24 26 27
29 30 31 32 34 40 50 56 58
234 235 270 500
1234 1235 1236 1237
2300
Ich möchte die Zeilen mit weniger als 2 Spalten löschen, daher sollte die Ausgabe folgendermaßen aussehen:
2 4 5 6 7 19
24 26 27
29 30 31 32 34 40 50 56 58
234 235 270 500
1234 1235 1236 1237
Antwort1
Wie steeldriver kommentierte:
awk 'NF>1' input > output
Ein anderer Weg:
grep '[^ ] [^ ]' input > output
(Suchen Sie nach einem Zeichen, das kein Leerzeichen ist, gefolgt von einem Leerzeichen, gefolgt von einem Zeichen, das kein Leerzeichen ist).
So bearbeiten Sie es direkt:
sed -i '/[^ ] [^ ]/!d' input