'\" t .\" Title: bits .\" 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 "BITS" "1" "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 "الاسم" bits \- حوّل أقنعة أو قوائم البتات من/إلى تنسيقات متنوعة .SH "موجز" .sp \fBbits\fP [\fB\-h\fP] [\fB\-V\fP] [\fB\-w\fP \fIالرقم\fP] [\fIالنمط\fP] [\fIالقناع\fP|\fIالقائمة\fP].\|.\|. .SH "الوصف" .sp تقوم أداة \fBbits\fP بالتحويل بين أقنعة البتات وقوائم البتات. وهي تدعم دمج أقنعة أو قوائم متعددة باستخدام العمليات الثنائية (bitwise). .SH "المعاملات الموضعية" .sp \fImask\fP .RS 4 مجموعة من البتات المحددة كقيمة قناع ست عشري (على سبيل المثال: \fB0xeec2\fP). .RE .sp \fIlist\fP .RS 4 مجموعة من البتات المحددة كقائمة من معرفات البتات مفصولة بفاصلة (على سبيل المثال: \fB1,5,29,32\fP). .RE .sp إذا لم يُحدد أي معطى، تُقرأ مجموعات البتات من المدخل القياسي، مجموعة واحدة لكل سطر. .sp يمكن ضغط المعرفات المتتالية في شكل نطاقات (على سبيل المثال: \fB5,6,7,8,9,10\fP \(-> \fB5\-10\fP). .sp اختيارياً، إذا بدأ المعطى بفاصلة، فسيُحلل كقناع ست عشري واحد مقسم إلى مجموعات 32 بت (على سبيل المثال: \fB,00014000,00000000,00020000\fP \(-> \fB17,78,80\fP). .sp تُدمج جميع المجموعات مبدئياً باستخدام عملية OR المنطقية. إذا احتوت مجموعة على إحدى البوادئ \fB&\fP أو \fB^\fP أو \fB~\fP، فستُدمج مع القناع الناتج باستخدام عملية ثنائية مختلفة: .sp \fB&\fP\fIقناع\fP|\fB&\fP\fIقائمة\fP .RS 4 ستُدمج المجموعة باستخدام عملية AND الثنائية. أي: أن جميع البتات التي ضُبطت على 1 في المجموعة وفي المجموعات المدمجة حتى الآن سيُحافظ عليها كـ 1. وستُصفر جميع البتات الأخرى إلى 0. .RE .sp \fB^\fP\fIقناع\fP|\fB^\fP\fIقائمة\fP .RS 4 ستُدمج المجموعة باستخدام عملية XOR الثنائية. أي: أن جميع البتات التي ضُبطت على 1 في المجموعة وعلى 0 في المجموعات المدمجة حتى الآن (أو العكس) ستُضبط على 1. أما البتات التي ضُبطت كلاهما على 1 أو كلاهما على 0 فستُصفر إلى 0. .RE .sp \fB~\fP\fIقناع\fP|\fB~\fP\fIقائمة\fP .RS 4 ستُمسح جميع البتات المضبوطة على 1 في المجموعة (تُصفر إلى 0) في المجموعات المدمجة حتى الآن. .RE .SH "الخيارات" .sp \fB\-w\fP \fIرقم\fP، \fB\-\-width\fP \fIرقم\fP .RS 4 العدد الأقصى للبتات في الأقنعة التي يعالجها \fBbits\fP. المبدئي هو \fB8192\fP. سيُقتطع أي بت أكبر من هذا العدد. .RE .sp \fB\-h\fP، \fB\-\-help\fP .RS 4 اعرض نص المساعدة ثم اخرج. .RE .sp \fB\-V\fP، \fB\-\-version\fP .RS 4 اعرض الإصدار واخرج. .RE .SH "وضع التحويل" .sp يمكن تحديد أحد أوضاع التحويل التالية. إذا لم يُحدد، فسيُستخدم الوضع المبدئي \fB\-m\fP أو \fB\-\-mask\fP. .sp \fB\-b\fP، \fB\-\-binary\fP .RS 4 اطبع المعطيات المدمجة كقيمة قناع ثنائي. .RE .sp \fB\-g\fP، \fB\-\-grouped\-mask\fP .RS 4 اطبع المعطيات المدمجة كقيمة قناع ست عشري في مجموعات 32 بت مفصولة بفاصلة. .RE .sp \fB\-l\fP، \fB\-\-list\fP .RS 4 اطبع المعطيات المدمجة كقائمة من معرفات البتات. تُضغط المعرفات المتتالية إلى نطاقات. .RE .sp \fB\-m\fP، \fB\-\-mask\fP .RS 4 اطبع المعطيات المدمجة كقيمة قناع ست عشري (مبدئي). .RE .SH "أمثلة" .sp .if n .RS 4 .nf .fam C ~$ bits \-\-mask 4,5\-8 16,30 0x400101f0 ~$ bits \-\-list 0xeec2 1,6,7,9\-11,13\-15 ~$ bits \-\-binary 4,5\-8 16,30 0b100_0000_0000_0001_0000_0001_1111_0000 ~$ bits \-\-list ,00300000,03000000,30000003 0,1,28,29,56,57,84,85 ~$ bits \-\-list 1,2,3,4 ~3\-10 1,2 ~$ bits \-\-list 1,2,3,4 ^3\-10 1,2,5\-10 ~$ bits \-\-grouped\-mask 2,22,74,79 8400,00000000,00400004 ~$ bits \-\-width 64 \-\-list 2,22,74,79 2,22 .fam .fi .if n .RE .SH "المؤلفين" .sp روبن جاري (Robin Jarry). .SH "التبليغ عن الأخطاء" .sp لتقارير العِلل، استخدم \c .URL "https://github.com/util\-linux/util\-linux/issues" "مُتتبع المشكلات" "." .SH "التوفر" .sp الأمر \fBbits\fP جزء من حزمة util\-linux التي يمكن تنزيلها من \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "أرشيف نواة لينكس" "."