awk Générateur de commandes
Générer des commandes awk pour l'analyse de motifs et le traitement de texte
Premiers pas avec awk
## Qu'est-ce que awk ?
`awk` est un langage de programmation pour traiter du texte. Il parcourt l'entrée ligne par ligne, découpe chaque ligne en champs et exécute un programme de règles `pattern { action }`. Il excelle pour l'extraction de colonnes, les rapports tabulaires et l'arithmétique ligne par ligne.
## Comment l'utiliser
1. **Saisir le programme** : fournissez un programme `awk` tel que `{print $1}`. 2. **Définir le séparateur de champs** (facultatif) : `-F ','` pour une entrée CSV. 3. **Indiquer le fichier** : saisissez le fichier à traiter. 4. **Copier et exécuter** : copiez la commande générée dans votre terminal.
Syntaxe du programme
Un programme `awk` est une séquence de règles :
``` pattern { action } pattern { action } ```
### Variables intégrées - `$0` — toute la ligne courante - `$1`, `$2`, … — le 1er, 2e, … champ (découpé par `FS`) - `NF` — nombre de champs dans la ligne courante - `NR` — numéro de la ligne courante (sur tout le fichier) - `FS` — séparateur de champs (espace par défaut ; à définir via `-F`)
### Motifs spéciaux - `BEGIN { … }` — exécuté une fois avant toute lecture d'entrée (idéal pour l'initialisation/l'en-tête) - `END { … }` — exécuté une fois après consommation de toute l'entrée (idéal pour les totaux)
### Exemples - `{print $1}` — afficher le premier champ de chaque ligne - `{sum += $1} END {print sum}` — additionner la première colonne - `NR == 1 {next} {print}` — ignorer la ligne d'en-tête - `$3 > 100 {print $1, $3}` — afficher les lignes où le troisième champ dépasse 100
### Guillemets Entourez le programme de simples quotes pour que `$`, `{`, `}` ne soient pas interprétés par le shell. Ce générateur gère les guillemets pour vous.
▶Comment analyser un fichier CSV ?
▶Comment calculer un total cumulé ?
Si cet outil vous a été utile, pensez à m’offrir un café.
Achetez-moi un café.