awk '{ print $2 }' text.txt > outputfile.txt
>
=> Esto redirigirá STDOUT
a un archivo. Si el archivo no existe, lo creará. Si el archivo existe, borrará (en efecto) el contenido y escribirá nuevos datos en él
>>
=> Esto significa lo mismo que arriba, pero si el archivo existe, se le agregarán nuevos datos.
Ej:
$ 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
Alternativamente, puede usar el comando tee
para la redirección. El comando tee
redirigirá STDOUT
a un archivo específico, así como a la pantalla del terminal
Para obtener más información sobre la redirección de shell, vaya al siguiente enlace:
http://www.techtrunch.com/scripting/redirections-and-file-descriptors
Hay una manera de hacer esto desde dentro de awk (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