Schneiden Sie ein Wort, bevor Trennzeichen - Bash

Wie verwende ich cut um ein Wort vor dem Trennzeichen? Zum Beispiel, ich habe die Zeile unten in file.txt:

eins zwei drei vier fünf sechs sieben

wenn ich den cut Sie folgenden Befehl ein:

cat file.txt | cut -d ':' -f1

...dann bekomme ich alles vor dem Trennzeichen; d.h.:

eins zwei drei vier fünf

...aber ich will nur, um "fünf"

Möchte ich nicht verwenden awk oder die position, da die Datei immer ändert und die position der "fünf" kann überall sein. Die einzige Sache fixiert ist, dass fünf ":" Trennzeichen.

Dank!

Ihr Grund für die nicht wollen, verwenden Sie awk nicht sinnvoll.
cut -d ':' -f1 file.txt | rev | cut -d' ' -f 1 | rev funktionieren würde, wenn Sie wirklich wollen, zu verwenden, schneiden, obwohl es wäre viel einfacher mit awk oder sed
meine Datei ändern kann, wie ich bereits erwähnt habe, zum Beispiel s='fünf: zwei drei vier sieben sechs' , so will ich nicht verwenden print $5 fester.
Amandan, das funktioniert! und ich lernte einen neuen Befehl "rev" 🙂
War mir nicht. Ich sagte nur, dass awk ist viel mehr als print $5.

InformationsquelleAutor sidman | 2015-10-08

Schreibe einen Kommentar