SCOLS-FILTER(5) Dateiformate und Konventionen SCOLS-FILTER(5) BEZEICHNUNG scols-filter - Syntax fur libsmartcols-Filterausdrucke SYNTAX Ausdruck: param | ( Ausdruck ) | Ausdruck && Ausdruck | Ausdruck AND Ausdruck | Ausdruck || Ausdruck | Ausdruck OR Ausdruck | !Ausdruck | NOT Ausdruck | Ausdruck == Ausdruck | Ausdruck EQ Ausdruck | Ausdruck != Ausdruck | Ausdruck NE Ausdruck | Ausdruck >= Ausdruck | Ausdruck GE Ausdruck | Ausdruck <= Ausdruck | Ausdruck LE Ausdruck | Ausdruck > Ausdruck | Ausdruck GT Ausdruck | Ausdruck < Ausdruck | Ausdruck LT Ausdruck | Ausdruck =~ Zeichenkette | Ausdruck !~ Zeichenkette Parameter: Ganzzahl | Gleitkommazahl | Zeichenkette | Boolescher Wert | Platzhalter Ganzzahl: [0-9]* | [0-9]*[KMGTPEZY] | [0-9]*[KMGTPEZY]iB Gleitkommazahl: Ganzzahl,Ganzzahl boolesch: "true" | "false" | "TRUE" | "FALSE" Zeichenkette: "[^\n\"]*" | '[^\n\']*' Platzhalter: [a-zA-Z][a-zA-Z_.%:/\-0-9]* BESCHREIBUNG Der Filterausdruck kann von Anwendungen, die mit libsmartcols verknupft sind, zum Filtern von Ausgabedaten verwendet werden. Die Anwendung kann den Filter verwenden, bevor sie alle Daten fur die Ausgabe sammelt, um Ressourcen zu sparen und die Leistung zu verbessern. Dadurch ist der scols-Filter fur die gesamte Ausgabe effektiver als grep(1). Beispiel: lsblk --output NAME,LABEL,FSTYPE --filter 'NAME=="sda1"' hilft lsblk(1), LABELs nicht fur alle blockorientierten Gerate aus udevd oder libblkid zu lesen, sondern nur fur das Gerat sda1. Der Filter kann auch fur Spalten verwendet werden, die nicht fur die Ausgabe vorgesehen sind. HINWEISE ZUR SYNTAX Ein Ausdruck besteht aus Platzhaltern, Parametern und Operatoren. Der aktuell unterstutzte Platzhalter-Typ ist nur der Spaltenname. Der Name muss ohne Anfuhrungszeichen verwendet werden. Vor der Auswertung ordnet die Anwendung die Spaltennamen im angegebenen Ausdruck den Spalten der Ausgabetabelle zu und weist dem Platzhalter den Spaltendatentyp zu. Der Standardtyp ist >>string<<. Der Parameter >>param<< dient zur direkten Darstellung eines Werts. Die derzeit unterstutzten Datentypen sind >>integer<<, >>float<<, >>string<< und >>boolean<<. Ein Operator arbeitet mit einem oder zwei Operanden. Er hat eine Erwartung an den Datentyp seiner Operanden. Die Angabe eines unerwarteten Datentyps fuhrt zu einem Syntaxfehler. Die Bibliothek kann zwischen Datentypen konvertieren. Der bevorzugte Typ ist immer der durch >>param<< angegebene Typ. Bei Ausdrucken mit Zahlen und Gleitkommazahlen wird der Gleitkommatyp bevorzugt. Operatoren mit zwei Operanden sind >>and<<, >>or<<, >>eq<<, >>ne<<, >>le<<, >>lt<<, >>ge<<, >>gt<<, >>=~<< und >>!~<<. Alphabetisch benannte Operatoren haben C-artige Aliase: >>&&<<, >>||<<, >>==<<, >>!=<<, >><<<, >><=<<, >>>=<< und >>><<. >>!<< ist der einzige Operator, der einen Operanden akzeptiert. Wenn kein Operator angegeben ist, ist der Ausdruck wahr, sofern Parameter oder Platzhalter nicht leer sind. Beispielsweise gibt --filter NAME Zeilen zuruck, in denen die Spalte NAME nicht leer ist. >>=~<< und >>!~<< dienen zum Abgleichen regularer Ausdrucke. Wenn eine Zeichenkette auf der rechten Seite auf einen regularen Ausdruck auf der linken Seite passt (oder nicht, wenn >>!~<< gilt), ist das Ergebnis wahr. Der Operand auf der rechten Seite muss ein Zeichenkettenliteral sein. Die Rangfolge innerhalb der Operatoren ist >>or<<, >>and<< und >>eq<<, >>ne<<, >>le<<, >>gt<<, >>ge<<, >>=~<<, >>!~<<, >>not<<. BESCHRANKUNGEN Bei Werten vom Typ >>float<< und >>integer<< unterstutzt die Filter-Engine nur nichtnegative Zahlen. >>integer<< ist eine vorzeichenlose 64-Bit-Zahl, >>float<< ist eine >>long double<<-Zahl. Dem >>integer<< konnen die multiplikativen Suffixe KiB, GiB, TiB, PiB, EiB, ZiB und YiB folgen (das >>iB<< ist optional, z. B. hat >>K<< die gleiche Bedeutung wie >>KiB<<). AUTOREN Karel Zak Basierend auf der ursprunglichen Implementierung von Masatake YAMATO . FEHLER MELDEN Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem . VERFUGBARKEIT Die Bibliothek libsmartcols ist seit Version 2.25 Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv heruntergeladen werden kann. util-linux 2.41.2 2025-09-22 SCOLS-FILTER(5)