'\" t .\" Title: scols-filter .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-05-18 .\" Manual: تنسيقات الملفات والاصطلاحات .\" Source: util-linux 2.42.1 .\" Language: English .\" .TH "SCOLS\-FILTER" "5" "2026-05-18" "util\-linux 2.42.1" "تنسيقات الملفات والاصطلاحات" .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 "الاسم" scols-filter \- بناء جملة تعبيرات مرشح libsmartcols .SH "الصياغة" .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: integer | float | string | boolean | holder integer: [0\-9]* | [0\-9]*[KMGTPEZY] | [0\-9]*[KMGTPEZY]iB float: integer.integer boolean: "true" | "false" | "TRUE" | "FALSE" string: "[^\(rsn\(rs"]*" | \*(Aq[^\(rsn\(rs\*(Aq]*\*(Aq holder: [a\-zA\-Z][a\-zA\-Z_.%:/\(rs\-0\-9]* .fam .fi .if n .RE .SH "الوصف" .sp يمكن استخدام تعبير المرشح بواسطة التطبيقات المرتبطة بمكتبة libsmartcols لترشيح بيانات المخرجات. يمكن للتطبيق استخدام المرشح قبل جمع كافة البيانات للمخرجات لتقليل الموارد وتحسين الأداء. وهذا يجعل مرشح scols أكثر فاعلية من \fBgrep\fP(1) على المخرجات الكاملة. على سبيل المثال .sp .if n .RS 4 .nf .fam C lsblk \-\-output NAME,LABEL,FSTYPE \-\-filter \*(AqNAME=="sda1"\*(Aq .fam .fi .if n .RE .sp يساعد \fBlsblk\fP(1) على عدم قراءة اللصائق (LABELs) لكافة الأجهزة الكتلية من udevd أو libblkid، بل قراءتها فقط للجهاز sda1. .sp يمكن أيضاً استخدام المرشح للأعمدة غير المستخدمة في المخرجات. .SH "ملاحظات على الصياغة" .sp يتكون التعبير من الحواضن (holders)، والمعاملات (params)، والعوامل (operators). .sp نوع \f(CRholder\fP المدعوم حالياً هو اسم العمود فقط. يجب استخدام الاسم بدون علامات اقتباس. قبل التقييم، يربط التطبيق أسماء الأعمدة في التعبير المعطى بأعمدة جدول المخرجات ويخصص نوع بيانات العمود لـ holder. النوع المبدئي هو "string". .sp المعامل \f(CRparam\fP مخصص لتمثيل قيمة مباشرة. أنواع البيانات المتاحة حالياً هي integer وfloat وstring وboolean. .sp يعمل العامل مع مُعامل واحد أو مُعاملين. للعامل توقعات حول أنواع البيانات لمعاملاته. إعطاء نوع بيانات غير متوقع للعامل يسبب خطأً في القواعد. يمكن للمكتبة التحويل بين أنواع البيانات، والنوع المفضل دائماً هو النوع المحدد بواسطة \f(CRparam\fP وفي حالة وجود تعبير يحتوي على عدد وعدد عائم، فإن المفضل هو العائم. .sp العوامل التي تأخذ مُعاملين هي \f(CRand\fP و`or` و`eq` و`ne` و`le` و`lt` و`ge` و`gt` و`=~` و`!~\f(CR. للعوامل المسماة أبجدياً أسماء مستعارة بنمط لغة C: `&&\fP و`||` و`==` و`!=` و`<` و`\(lA` و`>=` و`>`. .sp \f(CR!\fP هو العامل الوحيد الذي يأخذ مُعاملاً واحداً. إذا لم يُحدد أي عامل، يكون التعبير صحيحاً (true) إذا لم يكن param أو holder فارغين. على سبيل المثال \fB\-\-filter NAME\fP سيعيد الأسطر التي لا يكون فيها العمود NAME فارغاً. .sp \f(CR=~\fP و \f(CR!~\fP مخصصان لمطابقة التعبيرات النمطية؛ إذا كانت السلسلة النصية على الجانب الأيمن تطابق (أو لا تطابق في حالة \f(CR!~\fP) تعبيراً نمطياً على الجانب الأيسر، تكون النتيجة صحيحة. يجب أن يكون المُعامل في الجانب الأيمن سلسلة نصية صريحة. .sp ترتيب الأسبقية بين المعاملات هو \f(CRor\fP و \f(CRand\fP و \f(CReq\fP و \f(CRne\fP و \f(CRle\fP و \f(CRgt\fP و \f(CRge\fP و \f(CR=~\fP و \f(CR!~\fP و \f(CRnot\fP. .SH "القيود" .sp بخصوص القيم من نوع \f(CRfloat\fP و \f(CRinteger\fP ، يدعم محرك التصفية الأرقام غير السالبة فقط. نوع \f(CRinteger\fP هو عدد غير مُوقع بطول 64 بت، ونوع \f(CRfloat\fP هو عشري طويل (long double). قد يتبع \f(CRinteger\fP لاحقات مضاعفة مثل KiB و GiB و TiB و PiB و EiB و ZiB و YiB (اللاحقة "iB" اختيارية، فعلى سبيل المثال، "K" لها نفس معنى "KiB"). .SH "المؤلفين" .sp .MTO "kzak\(atredhat.com" "Karel Zak" "" .sp بناءً على التنفيذ الأصلي من \c .MTO "yamato\(atredhat.com" "Masatake YAMATO" "." .SH "التبليغ عن الأخطاء" .sp لتقارير العِلل، استخدم \c .URL "https://github.com/util\-linux/util\-linux/issues" "مُتتبع المشكلات" "." .SH "التوفر" .sp المكتبة \fBlibsmartcols\fP جزء من حزمة util\-linux منذ الإصدار 2.25. يمكن تنزيلها من \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "أرشيف نواة لينكس" "."