GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie speichere ich die Ausgabe dieses awk-Befehls in einer Datei?

awk '{ print $2 }' text.txt > outputfile.txt

> => Dadurch wird STDOUT umgeleitet zu einer Datei. Wenn die Datei nicht existiert, wird sie erstellt. Wenn die Datei existiert, wird sie (tatsächlich) den Inhalt löschen und neue Daten hineinschreiben

>> => Dies bedeutet dasselbe wie oben, aber wenn eine Datei existiert, werden neue Daten daran angehängt.

Beispiel:

$ cat /etc/passwd | awk -F: '{ print $1 }' | tail -10 > output.txt
$ cat output.txt 
_warmd
_dovenull
_netstatistics
_avbdeviced
_krb_krbtgt
_krb_kadmin
_krb_changepw
_krb_kerberos
_krb_anonymous
_assetcache

Alternativ können Sie den Befehl tee verwenden zur Weiterleitung. Der Befehl tee leitet STDOUT um zu einer bestimmten Datei sowie zum Terminalbildschirm

Weitere Informationen zur Shell-Umleitung finden Sie unter folgendem Link:

http://www.techtrunch.com/scripting/redirections-and-file-descriptors


Es gibt eine Möglichkeit, dies innerhalb von awk selbst zu tun (docs)

➜ cat text.txt
line 1
line 2
line three
line 4 4 4

➜ awk '{print $2}' text.txt
1
2
three
4

➜ awk '{print $2 >"text.out"}' text.txt

➜ cat text.out
1
2
three
4

Linux
  1. So speichern Sie die Befehlsausgabe in einer Datei unter Linux

  2. Wie verwende ich den Linux-Befehl Sort, um die Textdatei nach der vierten Spalte in numerischer Reihenfolge zu sortieren?

  3. Wie leitet man die Ausgabe von system() in eine Datei um?

  4. Wie kann die Ausgabe des Zeitbefehls in eine Datei unter Linux umgeleitet werden?

  5. So bearbeiten Sie eine Textdatei in meinem Terminal

So verwenden Sie den Linux-diff-Befehl

So speichern Sie die Linux-Befehlsausgabe in einem Bild oder einer Textdatei

So leiten Sie die Shell-Befehlsausgabe um

So speichern Sie die Ausgabe des Befehls in einer Datei mit dem Linux-Terminal

So fügen Sie Text am Anfang einer Datei in Linux hinzu

Speichern Sie die Ausgabe eines Befehls vom Debian-Terminal in einer Datei