ulmselect permet de faire le tri parmi toutes les données d'un fichier d'ULM en fonction de divers critères: par sélection (ou rejet) d'ULM, par translation de valeurs de champs, par addition de valeurs d'un champ, et par sélection des champs à garder.
ulmselect retourne, sur sa sortie standard, les ULM sélectionnés ne contenant que les champs sélectionnés ou faisant l'objet d'une addition.
La syntaxe d'appel d'ulmselect est la suivante:
ulmselect [ fieldname = fieldvalue ] ... [ fieldname != fieldvalue ] ... [ -t fieldname fieldvalue destvalue ] ... [ -s fieldname ] ... [ -k fieldname ] ... [ -p nnn ] filename
L'option -p nnn force ulmselect à afficher nnn
points sur son erreur standard, pour refléter son état d'avancement dans le
traitement d'un gros fichier.
Une ligne peut être sélectionée ou rejetée sur la base de l'appariement (ou non) de la valeur de l'un de ses champs à une expression régulière. Les deux syntaxes sont les suivantes:
nom_de_champ = expression_regulierenom_de_champ != expression_regulierePar exemple, ulmselect DST.FQDN = '\.fr$' log.ulm ne
sélectionne depuis le fichier log.ulm que les lignes dans
lesquelles la machine destination se trouve en France.
Toutes les expressions régulière dans Ulmgraph sont au format normalisé des expression régulières étendues POSIX 1003.2.
La valeur d'un champ peut être modifiée si elle s'apparie à une expression régulière. La syntaxe est la suivante:
-t nom_de_champ expression_reguliere remplacementCette translation permet de faire des regroupements. Par exemple,
ulmselect -t SRC.USR '(user1|user2|user3)' groupe1 -t SRC.USR
'(user4|user5)' groupe2 remplace les noms des utilisateurs par
le nom du groupe auquel ils appartiennent.
L'option -s permet de selectionner des champs pour lesquels
les valeurs trouvées sur différentes lignes seront additionnées. La
syntaxe est simple:
-s nom_de_champSeuls les champs explicitement sélectionnés sont conservés par
ulmselect.
-k nom_de_champLes champs qui font déjà l'objet d'une addition
(option -s) sont forcément sélectionnés.