# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 ##@creator: jclain ##@created: 27/04/2016 03:19 ##@modifier: jclain ##@changecount: 1 ##@tags: ##@title: umatch {{{ umatch: Afficher le résultat d'une recherche par regexp et compter éventuellement leurs occurences USAGE umatch [options] [regexp] Chaque ligne *entière* de stdin est mise en correspondance avec l'expression regulière qui doit avoir la syntaxe de awk. S'il y a correspondance, afficher soit toute l'expression matchée, soit chaque groupe s'il y a des expressions parenthésées, chacun des groupes étant séparé par le caractère sep. Si l'expression régulière n'est pas spécifiée, elle vaut par défaut '.*' ce qui fait que toutes les lignes correspondent. Ceci peut être utile avec les options -s et -c. Certaines expressions régulières sont prédéfinies. regexp peut avoir l'une des valeurs prédéfinies suivantes: ip --> [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+ OPTIONS -F sep Spécifier le caractère séparateur en sortie s'il faut afficher des champs multiples. Par défaut, utiliser le caractère ':' Si un séparateur vide est spécifié, le séparateur standard de awk est utilisé. -s Trier le résultat -C FIELDNUM -c, --count Compter les occurences successives de la valeur du champ FIELDNUM, et afficher une ligne de la forme 'countlast_line' pour chaque groupe, last_line étant la dernière occurence du groupe. L'option -c correspond à '-C 0', c'est à dire compter les occurences successives de toute les lignes. Le séparateur utilisé pour calculer le numéro de champ est sep, spécifié avec l'option -F. -a, --all-lines Avec les options -c/-C, afficher toutes les lignes des occurences successives au lieu de seulement la ligne de la dernière occurence. Ceci est utile surtout avec l'option -C, pour voir les différences avec les différentes lignes. -m, --multiple Avec les options -c/-C, n'afficher que les lignes dont le compte est supérieur à 1. Avec l'option -a, les groupes contigus sont séparés par une ligne '--' }}}