'\" t .\" Title: scols-filter .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.23 .\" Date: 2025-03-29 .\" Manual: Formats de fichier et conventions .\" Source: util-linux 2.41 .\" Language: English .\" .TH "SCOLS\-FILTER" "5" "2025-03-29" "util\-linux 2.41" "Formats de fichier et conventions" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "NOM" scols-filter \- syntaxe pour les expressions de filtre de libsmartcols .SH "SYNTAXE" .sp .if n .RS 4 .nf .fam C expr: param | ( expr ) | expr && expr | expr AND expr | expr || expr | expr OR expr | !expr\& | NOT expr | expr == expr | expr EQ expr | expr != expr | expr NE expr | expr >= expr | expr GE expr | expr <= expr | expr LE expr | expr >\& expr | expr GT expr | expr <\& expr | expr LT expr | expr =~ string | expr !~ string param: entier | virgule flottante | chaîne | booléen | holder entier: [0\-9]* | [0\-9]*[KMGTPEZY] | [0\-9]*[KMGTPEZY]iB virgule flottante: entier.entier booléen: "true" | "false" | "TRUE" | "FALSE" chaîne: "[^\(rsn\(rs"]*" | \*(Aq[^\(rsn\(rs\*(Aq]*\*(Aq holder: [a\-zA\-Z][a\-zA\-Z_.%:/\(rs\-0\-9]* .fam .fi .if n .RE .SH "DESCRIPTION" .sp L\(cqexpression de filtre peut être utilisée par l\(cqapplication liée à libsmartcols pour filtrer les données en sortie. L\(cqapplication peut utiliser le filtre avant de collecter toutes les données de la sortie afin de réduire les ressources et améliorer la performance. Cela rend le filtre scols plus efficace que grep(1) sur la sortie complète. Par exemple .sp .if n .RS 4 .nf .fam C lsblk \-\-output NOM,ÉTIQUETTE,TYPESF \-\-filter \*(AqNOM=="sda1"\*(Aq .fam .fi .if n .RE .sp aide lsblk(1) à ne pas lire les ÉTIQUETTES pour tous les périphériques blocs de udevd ou libblkid mais le lire uniquement pour le périphérique sda1. .sp Le filtre peut aussi être utilisé pour les colonnes qui ne sont pas utilisées dans la sortie. .SH "NOTES SUR LA SYNTAXE" .sp Une expression consiste en holders, params et opérateurs. .sp Le seul type de « holder » actuellement supporté est le nom de la colonne. Le nom doit être utilisé sans guillemets. Avant l\(cqévaluation, l\(cqapplication fait correspondre les noms des colonnes dans l\(cqexpression donnée avec les colonnes de la table de sortie et assigne le type de donnée de la colonne au « holder ». Le type par défaut est « chaîne ». .sp Le « param » représente une valeur directement. Les types de données actuellement supportés sont entiers, virgules flottantes, chaînes et booléens. .sp Un opérateur travaille avec un ou deux opérandes. Un opérateur a des attentes quant au type de donnée de ses opérandes. Donner un type de donnée inattendu à un opérateur provoque une erreur de syntaxe. La bibliothèque sait convertir les types de données, celui qui est préféré est toujours le type spécifié par « param » et dans le cas d\(cqexpressions avec des nombres et des virgules flottantes, la virgule flottante est préférée. .sp Les opérateurs prenant deux opérandes sont « and », « or », « eq », « ne », « le », « lt », « ge », « gt », « =~ », « !~ ». Les opérateurs avec un nom alphabétique ont des synonymes comme ceux du langage C : « && », « || », « == », « != », « < », « \(lA », « >= » et « > ». .sp « ! » est le seul opérateur qui prend un opérande. Si aucun opérande n\(cqest spécifié, l\(cqexpression est vraie si param ou holder ne sont pas vides. Par exemple, « \-\-filter NOM » retournera les lignes où la colonne NOM n\(cqest pas vide. .sp « =~ » et « !~ » sont pour la correspondance des expressions régulières ; si une chaîne à droite correspond (ou ne correspond pas pour « !~ ») à une expression régulière du côté gauche, le résultat est vrai. L\(cqopérande de droite doit être une chaîne littérale. .sp L\(cqordre des opérations entre les opérateurs est « or », « and » et « eq », « ne », « le », « gt », « ge », « =~ », « !~ », « not ». .SH "LIMITATIONS" .sp About \f(CRfloat\fP and \f(CRinteger\fP typed values, the filter engine supports only non\-negative numbers. The \f(CRinteger\fP is unsigned 64\-bit number, and \f(CRfloat\fP is long double. The \f(CRinteger\fP may be followed by the multiplicative suffixes KiB, GiB, TiB, PiB, EiB, ZiB, and YiB (the "iB" is optional, e.g., "K" has the same meaning as "KiB"). .SH "AUTEURS" .sp .MTO "kzak\(atredhat.com" "Karel Zak" "" .sp Based on original implementation from \c .MTO "yamato\(atredhat.com" "Masatake YAMATO" "." .SH "SIGNALER DES BOGUES" .sp Pour signaler un bogue, utilisez le \c .URL "https://github.com/util\-linux/util\-linux/issues" "gestionnaire de bogues" "." .SH "DISPONIBILITÉ" .sp La bibliothèque \fBlibsmartcols\fP fait partie du paquet util\-linux depuis la version 2.25. Elle est disponible sur \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "l’archive du noyau Linux" "."