| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| utilisateurs:bcag2:awk [Le 28/10/2025, 12:08] – [Variables de base] bcag2 | utilisateurs:bcag2:awk [Le 16/03/2026, 15:23] (Version actuelle) – [awk/gawk (GNU awk)] bcag2 |
|---|
| ====== awk ====== | ====== awk/gawk (GNU awk) ====== |
| La commande en ligne [[wpfr>awk]] est souvent utilisée pour extraire un ou plusieurs champs de données séparables, à commencer par les champs de fichiers CSV/TSV…\\ | La commande en ligne liée au langage [[wpfr>awk]] est souvent utilisée pour extraire un ou plusieurs champs de données séparables, à commencer par les champs de fichiers CSV/TSV…\\ |
| Elle est bien plus simple qu’il n’y paraît au premier coup d’œil | Elle est bien plus simple qu’il n’y paraît au premier coup d’œil |
| |
| ls -la | awk '{ printf ("%s -> %d\n", $9, $5) }' | ls -la | awk '{ printf ("%s -> %d\n", $9, $5) }' |
| </code> | </code> |
| <note tip>//printf// fonctionne comme de façon similaire au commande équivalent du langage python et C.\\ Ci-dessus, le %s (string/chaîne de caractère) est remplacé par $9, càd le nom du fichier, et %d (digital/valeur numérique) est remplacé par $5, la taille du fichier en octets</note> | <note tip>//printf// fonctionne de façon similaire aux commandes équivalentes des langages python et C.\\ Ci-dessus, le %s (string/chaîne de caractère) est remplacé par $9, càd le nom du fichier, et %d (digital/valeur numérique) est remplacé par $5, la taille du fichier en octets</note> |
| | <note important>ne pas confondre **//print//** -> //print($2, $5, $7)// et **//printf//** largement utilisé dans cette page</note> |
| |
| et en compliquant un peu, la même chose sur un répertoire de photos JPG pour lister la taille de celle de plus de 1Mo : | et en compliquant un peu, la même chose sur un répertoire de photos JPG pour lister la taille de celle de plus de 1Mo : |
| * [[https://blog.stephane-robert.info/docs/admin-serveurs/linux/awk/|très bon tuto de Stéphane Robert]] | * [[https://blog.stephane-robert.info/docs/admin-serveurs/linux/awk/|très bon tuto de Stéphane Robert]] |
| * [[https://www.malekal.com/comment-utiliser-la-commande-awk-avec-des-exemples/|autre tuto en français sur malekal.com]], plus complet sur les options (OFS par exemple) | * [[https://www.malekal.com/comment-utiliser-la-commande-awk-avec-des-exemples/|autre tuto en français sur malekal.com]], plus complet sur les options (OFS par exemple) |
| | * [[https://www.gnu.org/software/gawk/manual/gawk.html|Doc gawk sur GNU]] |