awk '{ print $2 }' text.txt > outputfile.txt
>
=> Cela redirigera STDOUT
à un dossier. Si le fichier n'existe pas, il le créera. Si le fichier existe, il effacera (en fait) le contenu et y écrira de nouvelles données
>>
=> Cela signifie la même chose que ci-dessus mais si le fichier existe, cela lui ajoutera de nouvelles données.
Par exemple :
$ 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
Vous pouvez également utiliser la commande tee
pour la redirection. La commande tee
redirigera STDOUT
vers un fichier spécifié ainsi que l'écran du terminal
Pour en savoir plus sur la redirection du shell, accédez au lien suivant :
http://www.techtrunch.com/scripting/redirections-and-file-descriptors
Il existe un moyen de le faire depuis awk lui-même (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