XXD
هذا هو الأمر xxd الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
XXD - قم بعمل تفريغ سداسي أو قم بالعكس.
موجز
XXD -يساعد]
XXD [خيارات] [infile [outfile]]
XXD -r [evert] [خيارات] [infile [outfile]]
الوصف
XXD ينشئ ملف تفريغ سداسي عشرية لملف معين أو إدخال قياسي. يمكنه أيضًا تحويل تفريغ سداسي عشرية
العودة إلى شكله الثنائي الأصلي. يحب uuencode(1) و كودكود(1) يسمح لـ
نقل البيانات الثنائية في تمثيل ASCII "الآمن للبريد" ، ولكن له ميزة
من فك التشفير إلى الإخراج القياسي. علاوة على ذلك ، يمكن استخدامه لإجراء تصحيح ملف ثنائي.
OPTIONS
إذا كانت الإجابة بلا شرير يتم إعطاء المدخلات القياسية للقراءة. لو شرير تم تحديده كـ "-' شخصية،
ثم يتم أخذ المدخلات من المدخلات القياسية. إذا كان الجواب لا ملف يُعطى (أو "-الشخصية في
مكانه) ، يتم إرسال النتائج إلى الإخراج القياسي.
لاحظ أنه يتم استخدام المحلل اللغوي "البطيء" والذي لا يبحث عن أكثر من الخيار الأول
إلكتروني ، ما لم يكن الخيار متبوعًا بمعامل. مسافات بين خيار واحد
حرف ومعلمة اختيارية. يمكن تحديد معلمات الخيارات بالتدوين العشري ،
تدوين سداسي عشري أو ثماني. هكذا -ج8, -c 8, -c 010 و -أولس 8 كلها متكافئة.
-a | -التخطي التلقائي
toggle autoskip: حرف "*" واحد يحل محل الأسطر nul. الافتراضي قبالة.
-b | بت
قم بالتبديل إلى البتات (الأرقام الثنائية) التفريغ ، بدلاً من التفريغ السداسي. يكتب هذا الخيار
الثماني أرقام في شكل ثمانية أرقام "1" و "0" بدلاً من تفريغ سداسي عشري عادي. كل
يسبق السطر رقم سطر بالنظام الست عشري ويتبعه رمز ASCII (أو
ebcdic) التمثيل. مفاتيح سطر الأوامر -r ، -p ، -i لا تعمل مع هذا
واسطة.
-c العواميد | -أولس العواميد
شكلالعواميد> ثماني بتات لكل سطر. الافتراضي 16 (-i: 12 ، -ps: 30 ، -b: 6). الحد الأقصى 256.
-E | -EBCDIC
قم بتغيير ترميز الأحرف في العمود الأيمن من ASCII إلى EBCDIC. هذا
لا يغير التمثيل السداسي العشري. الخيار لا معنى له في
مجموعات مع -r أو -p أو -i.
-e قم بالتبديل إلى التفريغ السداسي الصغير. هذا الخيار يعامل مجموعات البايت ككلمات في
ترتيب بايت صغير. يمكن تغيير التجميع الافتراضي البالغ 4 بايت باستخدام -g.
ينطبق هذا الخيار فقط على التفريغ السداسي ، مع ترك تمثيل ASCII (أو EBCDIC)
دون تغيير. مفاتيح سطر الأوامر -r ، -p ، -i لا تعمل مع هذا الوضع.
-g بايت | -حجم المجموعة بايت
افصل إخراج كلبايت> بايت (حرفان سداسيتان أو ثمانية أرقام بت
كل) بمسافة بيضاء. حدد -g 0 لقمع التجمع.بايت> الافتراضي إلى 2
في الوضع العادي ، 4 في وضع endian الصغير و 1 في وضع بت. التجمع لا
تنطبق على التذييل أو تضمين النمط.
-h | -مساعدة
اطبع ملخصًا للأوامر المتاحة واخرج. لا يتم تنفيذ الإغراق السداسي.
-i | -تضمن
الإخراج في C يشمل نمط الملف. يتم كتابة تعريف مصفوفة ثابتة كاملة
(سميت باسم ملف الإدخال) ، ما لم يقرأ xxd من stdin.
-l ليون | -لين ليون
توقف بعد الكتابةليون> ثماني بتات.
-o عوض
يضيفعوض> إلى وضع الملف المعروض.
-p | -ملاحظة | -النص | -عادي
الإخراج في نمط hexdump المستمر. يُعرف أيضًا باسم أسلوب hexdump العادي.
-r | -يرجع
عملية عكسية: تحويل (أو تصحيح) hexdump إلى ثنائي. إذا لم أكتب إلى
stdout ، xxd يكتب في ملف الإخراج دون اقتطاعه. استخدم المجموعة
-r -p لقراءة التفريغات السداسية العشرية بدون معلومات رقم السطر وبدون ملف
تخطيط عمود معين. يُسمح بالمسافات البيضاء الإضافية وفواصل الأسطر
في أي مكان.
-يطلب عوض
عندما تستخدم بعد -r: العودة مععوض> تمت إضافته إلى مواقع الملفات الموجودة في hexdump.
-s [+] [-] تسعى
تبدأ فيطلب> بايت القيمة المطلقة. (أو rel.) infile offset. + يشير إلى أن البحث هو
بالنسبة إلى موضع ملف stdin الحالي (لا معنى له عند عدم القراءة من
ستدين). - يشير إلى أن البحث يجب أن يتكون من العديد من الأحرف من نهاية
الإدخال (أو إذا تم دمجه مع +: قبل وضع ملف stdin الحالي). بدون
-s الخيار ، xxd يبدأ في موضع الملف الحالي.
-u استخدم الأحرف السداسية الكبيرة. الافتراضي هو الأحرف الصغيرة.
-v | -الإصدار
عرض سلسلة الإصدار.
تحفظات
XXD -r لديه بعض السحر المدمج أثناء تقييم معلومات رقم السطر. إذا كان الإخراج
يمكن البحث عن ملف ، ثم قد تكون الأرقام الموجودة في بداية كل سطر تفريغ سداسي خارج
النظام ، قد تكون الأسطر مفقودة أو متداخلة. في هذه الحالات xxd سوف lseek(2) في اليوم التالي
موضع. إذا لم يكن ملف الإخراج قابلاً للبحث ، يُسمح فقط بالفجوات التي سيتم ملؤها
بواسطة null-bytes.
XXD -r لا يولد أخطاء التحليل. يتم تخطي القمامة بصمت.
عند تحرير hexdumps ، يرجى ملاحظة ذلك XXD -r يتخطى كل شيء في سطر الإدخال بعد
قراءة عدد كافٍ من أعمدة البيانات السداسية العشرية (انظر الخيار -ج). هذا يعني أيضًا أن هذا يتغير
إلى أعمدة ascii (أو ebcdic) القابلة للطباعة دائمًا يتم تجاهلها. التراجع عن ملف عادي (أو
postcript) أسلوب hexdump مع xxd -r -p لا يعتمد على العدد الصحيح من الأعمدة.
هنا يتم تفسير أي شيء يشبه زوجًا من الأرقام السداسية.
لاحظ الفرق بين
% XXD -i ملف
و
% XXD -i < ملف
XXD -s + تسعى قد يكون مختلفًا عن XXD -s طلب، كما lseek(2) يستخدم لإرجاع الإدخال. أ
يحدث '+' فرقًا إذا كان مصدر الإدخال stdin ، وإذا لم يكن موضع ملف stdin كذلك
في بداية الملف بحلول الوقت الذي يتم فيه بدء xxd وإعطاء مدخلاته. الأتى
قد تساعد الأمثلة في التوضيح (أو مزيد من الخلط!) ...
الترجيع stdin قبل القراءة ؛ مطلوب لأن "القطة" قد قرأت بالفعل حتى نهاية
ستدين.
% sh -c "قط > نسخة عادية XXD -s 0 > نسخة سداسية عشرية " < ملف
تفريغ سداسي من موضع الملف 0x480 (= 1024 + 128) فصاعدًا. تعني علامة "+" "بالنسبة إلى
الوضع الحالي "، وبالتالي فإن الرقم" 128 "يضيف إلى 1 كيلو حيث توقف dd.
% sh -c "د من = normal_snippet بكالوريوس = 1 كيلو العد = 1 ؛ XXD -s 128+ > سداسي < ملف
تفريغ سداسي من موضع الملف 0x100 (= 1024-768) في.
% sh -c "د من = normal_snippet بكالوريوس = 1 كيلو العد = 1 ؛ XXD -s + -768 > سداسي < ملف
ومع ذلك ، فهذه حالة نادرة ونادرًا ما تكون هناك حاجة إلى استخدام "+". المؤلف يفضل
لرصد تأثير xxd مع عنيد(1) أو حزم(1) ، كلما تم استخدام -s.
أمثلة
اطبع كل شيء ما عدا الأسطر الثلاثة الأولى (سداسي عشرية 0x30 بايت) من ملف.
% XXD -s 0x30 ملف
طباعة 3 أسطر (سداسي عشرية 0x30 بايت) من نهاية ملف.
% XXD -s -0x30 ملف
اطبع 120 بايت على هيئة تفريغ سداسي مستمر مع 20 ثماني بتات لكل سطر.
% XXD -l 120 -ملاحظة -c 20 xxd.1
2e54482058584420312022417567757374203139
39362220224d616e75616c207061676520666f72
20787864220a2e5c220a2e5c222032317374204d
617920313939360a2e5c22204d616e2070616765
20617574686f723a0a2e5c2220202020546f6e79
204e7567656e74203c746f6e79407363746e7567
تفريغ سداسي أول 120 بايت من صفحة الدليل هذه بعدد 12 ثماني بتات لكل سطر.
% XXD -l 120 -c 12 xxd.1
0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "أ
000000 ج: 7567 7573 7420 3139 3936 2220 أغسطس 1996 "
0000018: 224d 616e 7561 6c20 7061 6765 "صفحة يدوية
0000024: 2066 6f72 2078 7864 220a 2e5c لـ xxd ".. \
0000030: 220a 2e5c 2220 3231 7374d ".. \" 204st M
000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996 .. \ "
0000048: 4d61 6e20 7061 6765 2061 7574 صفحة الرجل aut
0000054: 686f 723a 0a2e 5c22 2020 2020 hor: .. \ "
0000060: 546f 6e79e 204e 7567 توني نوجينت
000006c: 3c74 6f6e 7940 7363e 746
عرض التاريخ فقط من الملف xxd.1
% XXD -s 0x36 -l 13 -c 13 xxd.1
0000036: 3231 7374d 204 6179 2031 3939 36 مايو 21
Copy ملف_المدخلات إلى ملف إلاخراج وإرفاق 100 بايت مسبقًا بقيمة 0x00.
% XXD ملف_المدخلات | XXD -r -s 100 > ملف إلاخراج
تصحيح التاريخ في الملف xxd.1
% صدى "0000037: 3574 68 " | XXD -r - xxd.1
% XXD -s 0x36 -l 13 -c 13 xxd.1
0000036: 3235 7468d 204 6179 2031 3939 36 مايو 25
قم بإنشاء ملف 65537 بايت بجميع البايتات 0x00 ، باستثناء آخر واحد وهو "A" (ست عشري
0 × 41).
% صدى "010000: 41 " | XXD -r > ملف
التفريغ السداسي لهذا الملف باستخدام التنقّل التلقائي.
% XXD -a -c 12 ملف
0000000: 0000 0000 0000 0000 0000 0000 ............
*
000fffc: 0000 0000 40 .... أ
قم بإنشاء ملف 1 بايت يحتوي على حرف "A" واحد. الرقم بعد إضافة "-r -s" إلى
الأعداد الكتانية الموجودة في الملف ؛ في الواقع ، يتم منع البايتات البادئة.
% صدى "010000: 41 " | XXD -r -s -0x10000 > ملف
استخدم xxd كعامل تصفية داخل محرر مثل همة(1) لتفريغ منطقة محددة بين "أ"
و "ض".
: 'a،' z! xxd
استخدم xxd كعامل تصفية داخل محرر مثل همة(1) لاستعادة تفريغ سداسي عشري ثنائي ملحوظ
بين "أ" و "ض".
: 'a،' z! xxd -r
استخدم xxd كعامل تصفية داخل محرر مثل همة(1) لاستعادة سطر واحد من تفريغ سداسي.
حرك المؤشر فوق السطر واكتب:
!! xxd -r
قراءة الأحرف الفردية من سطر تسلسلي
% XXD -ج1 < / ديف / مصطلح / ب &
% stty < / ديف / مصطلح / ب -صدى صوت -أعلى -isig -كانون دقيقة 1
% صدى -n فو > / ديف / مصطلح / ب
عودة القيم
يتم إرجاع قيم الخطأ التالية:
0 لا توجد أخطاء.
-1 عملية غير مدعومة ( XXD -r -i لا يزال مستحيلا).
خطأ واحد أثناء تحليل الخيارات.
2 مشاكل مع ملف الإدخال.
3 مشاكل مع ملف الإخراج.
4,5،XNUMX موقف البحث المطلوب لا يمكن الوصول إليه.
استخدم xxd عبر الإنترنت باستخدام خدمات onworks.net