2019-07-16 01:24:02 +01:00
|
|
|
# awk
|
|
|
|
|
|
|
|
> Langage de programmation polyvalent pour travailler sur des fichiers.
|
2021-10-07 08:37:39 +01:00
|
|
|
> Plus d'informations : <https://github.com/onetrueawk/awk>.
|
2019-07-16 01:24:02 +01:00
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche la cinquième colonne (ou le champ) dans un fichier qui utilise des espaces comme séparateur :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk '{print $5}' {{nom_de_fichier}}`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche la deuxième colonne dans des lignes contenant "quelque-chose" dans un fichier qui utilise des espaces comme séparateur :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk '/{{quelque-chose}}/ {print $2}' {{nom_de_fichier}}`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche la dernière colonne de chaque ligne d'un fichier en utilisant une virgule (au lieu des espaces) comme séparateur :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk -F ',' '{print $NF}' {{nom_de_fichier}}`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Additionne les valeurs de la première colonne des lignes d'un fichier et affiche le total :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk '{s+=$1} END {print s}' {{nom_de_fichier}}`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Additionne les valeurs de la première colonne des lignes d'un fichier et affiche ces valeurs puis affiche le total :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk '{s+=$1; print $1} END {print "--------"; print s}' {{nom_de_fichier}}`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche une ligne sur trois en partant de la première ligne :
|
2019-07-16 01:24:02 +01:00
|
|
|
|
|
|
|
`awk 'NR%3==1' {{nom_de_fichier}}`
|
2020-11-01 14:42:00 +00:00
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche les lignes dont la valeur de la colonne 10 vaut la valeur recherchée :
|
2020-11-01 14:42:00 +00:00
|
|
|
|
|
|
|
`awk '($10 == valeur)'`
|
|
|
|
|
2021-10-07 08:37:39 +01:00
|
|
|
- Affiche les lignes dont la valeur de la colonne 10 est comprise entre un min et un max :
|
2020-11-01 14:42:00 +00:00
|
|
|
|
|
|
|
`awk '($10 >= valeur_min && $10 <= valeur_max)'`
|