
cmdchamp v1.2.15
مدرب واجهة سطر الأوامر bash — 30 مستوى من ls وصولاً إلى تصعيد الامتيازات
cmdchamp
مدرّب أوامر Bash — 30 مستوى من ls إلى تصعيد الامتيازات.

يطلب منك كل سؤال كتابة أمر حقيقي — احصل على تغذية راجعة فورية، ثم تابع. تعمل العديد منها على ملفات حقيقية داخل صندوق الحماية، وتقبل جميعها صيغًا صحيحة متعددة (sort -u أو sort | uniq). يبدّل Tab صفحة الدليل عندما تحتاج إلى مرجع، وتُرتَّب الأسئلة عشوائيًا في كل تشغيل بحيث لا يمكنك حفظها. يتتبع الإتقان ما تعرفه: أجب عن سؤال بشكل صحيح مرتين لتتقنه، وأخطئ فيه فيُخفَّض مستوى تكراره ليعود عاجلاً. يؤدي تسلسل 5 إجابات صحيحة إلى تفعيل وضع النار — لافتة تعمل حتى تخطئ.
ينتهي كل مستوى بجولة زعيم — بدون صفحات دليل، مؤقت 30 ثانية، 4/5 للنجاح. إذا فشلت، يمكنك إعادة محاولة الزعيم فورًا أو العودة إلى التدريب. اهزم جميع المستويات الثلاثين ليُفتح وضع التحدي: كل مستوى، مؤقت 20 ثانية، بدون صفحات دليل، خطأ واحد وينتهي الأمر. تشمل أول تشغيلة برنامجًا تعليميًا قصيرًا واختبار تحديد مستوى يتيح لك تخطي المستويات التي تعرفها بالفعل.
مع bubblewrap، تُنفَّذ الأوامر في نظام ملفات حقيقي داخل صندوق حماية. وبدونه، تُطابَق الإجابات نصيًا. تقبل مستويات البحث (16-17) كلاً من صيغة rg/fd وصيغة grep/find. ومحرر أسطر Vi مدمج.
التثبيت
Arch (AUR):
paru -S cmdchamp # or: yay -S cmdchamp
في أي مكان (ملف واحد):
mkdir -p ~/.local/bin && curl -sL https://raw.githubusercontent.com/mellen9999/cmdchamp/main/cmdchamp -o ~/.local/bin/cmdchamp && chmod +x ~/.local/bin/cmdchamp
أضف ~/.local/bin إلى PATH إذا لزم الأمر: echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
أو الاستنساخ:
git clone https://github.com/mellen9999/cmdchamp.git
cd cmdchamp && make install
المتطلبات: bash 4.4+ وcoreutils وawk
macOS: يأتي مع bash 3.2 — ثبّت bash 4.4+ أولاً: brew install bash
اختياري: bubblewrap (bwrap) لوضع صندوق الحماية (لينكس فقط) — تتضمنه معظم توزيعات سطح المكتب. وبدونه، تُطابَق الإجابات نصيًا فقط.
إمكانية الوصول: يحترم NO_COLOR وTERM=dumb. يتكيف التخطيط مع COLUMNS / tput cols. تحمل أشرطة الإتقان اللون ورمزًا ✓ / ~ / x — يمكن قراءتها بدون لون.
الأطراف: يعمل على أطراف تسلسلية حقيقية، وليس فقط المحاكيات. يستكشف cmdchamp ما يمكن للطرف عرضه فعليًا ويختار أحد مستويات العرض الثلاثة — يونيكود، رسم خطوط DEC ACS، أو ASCII خالص — فتبقى الإطارات سليمة على VT100/VT220/VT320/VT420 أو Wyse. على شاشة أحادية اللون، تُعاد ترميز الفروق اللونية كخط عريض/معكوس. يمكنك فرض مستوى بـ CMDCHAMP_ASCII=1 أو CMDCHAMP_UNICODE=1. ويتحقق ./test_terminals.sh من ذلك.
الاستخدام
cmdchamp # Launch the game menu
cmdchamp --no-sandbox # Disable sandbox (text-match only)
cmdchamp reset # Clear all progress
cmdchamp test # Run self-tests
cmdchamp version # Print version
cmdchamp help # Show help
تحتوي القائمة على: متابعة، لعبة جديدة، سيناريوهات، وضع التحدي، إحصائيات، وخيارات. تقفز مفاتيح الاختصار 1–7 مباشرة إلى عنصر؛ وj/k أو الأسهم للتنقل؛ وEnter للتحديد.
المستويات
| # | الاسم | التركيز |
|---|---|---|
| الأساسيات | ||
| 1 | الخطوات الأولى | pwd, ls, echo, cd, mkdir |
| 2 | أساسيات الملفات | cp, mv |
| 3 | احفظ عملك | >, >>, tee |
| 4 | قراءة الملفات | cat, head, tail, less |
| 5 | الأنابيب الأساسية | pipes, grep, wc, sort, uniq |
| 6 | الإدخال وHere-Strings | <, <<<, tr, cut, rev, bc |
| 7 | معالجة الأخطاء | 2>, 2>&1, &>, /dev/null |
| 8 | البوابات المنطقية | &&, || |
| 9 | المتغيرات | $VAR, assignment, expansion |
| 10 | المتغيرات الخاصة | $$, $?, $!, $#, $@, $0 |
| 11 | التحكم في الوظائف | bg, fg, jobs, &, Ctrl+Z |
| 12 | شروط الاختبار | -f, -d, -z, -n, -eq, -lt |
| 13 | أدوات الملفات الأساسية | cp, mv, ln, chmod, du, tar, diff |
| 14 | إدارة النظام | ping, df, free, ss, systemctl, ip |
| 15 | معددات الأطراف | tmux: الجلسات، النوافذ، الأجزاء |
| 16 | البحث النصي | grep, ripgrep, التعبيرات النمطية |
| 17 | العثور على الملفات | find, fd، بالاسم/الحجم/الوقت/النوع |
| 18 | معالجة البيانات | sort, uniq, cut, awk, tr, comm |
| 19 | السلاسل والمصفوفات | توسيع المعاملات، المصفوفات |
| 20 | تدفق التحكم | if/else، الحلقات، case، الدوال |
| 21 | العمليات المجمّعة | find -exec, xargs, sed -i, crontab |
| 22 | التعبيرات النمطية المتقدمة | التطلع الأمامي، sed، awk |
| DevOps والأمان | ||
| 23 | Git | الفروع، المستودعات البعيدة، إعادة الأساس، التخزين المؤقت، التنصيف |
| 24 | أدوات الشبكة | tshark، curl، jq، أنفاق ssh، openssl، SMB |
| 25 | مسح الشبكة | nmap، كشف الخدمات، البرامج النصية |
| 26 | WiFi والترددات اللاسلكية | aircrack-ng، netcat، tcpdump، الاستطلاع اللاسلكي |
| 27 | كسر الهاش | hashcat، john، hydra، الترميز |
| 28 | التحليل الجنائي | strings, readelf, binwalk, volatility, exiftool |
| 29 | تصعيد الامتيازات | SUID، GTFOBins، التعداد |
| 30 | ROOT | الاسترداد الطارئ، chroot، البقاء دون اتصال |
السيناريوهات
تحديات صندوق حماية متعددة الخطوات — تظل الحالة محفوظة بين الخطوات. تصبح متاحة من قائمة السيناريوهات بمجرد تجاوز زعيم الفتح.
| # | الاسم | يُفتح عند | الخطوات |
|---|---|---|---|
| 1 | قفل الأذونات | زعيم L13 | 6 |
| 2 | الأرشفة والاستخراج | زعيم L13 | 6 |
| 3 | ابحث عن الإبرة | زعيم L16 | 7 |
| 4 | CSV فوضوي | زعيم L18 | 4 |
| 5 | الحادثة | زعيم L18 | 5 |
| 6 | النشر المعطّل | زعيم L21 | 7 |
| 7 | طوارئ السجلات | زعيم L21 | 5 |
| 8 | جراحة الإعدادات | زعيم L21 | 5 |
| 9 | إنقاذ Git | زعيم L23 | 6 |
| 10 | إعادة الهيكلة المجمّعة | زعيم L21 | 6 |
| 11 | المسح الجنائي | زعيم L22 | 6 |
اختبار تحديد المستوى
بعد البرنامج التعليمي لأول تشغيل، يُسأل عما إذا كنت تريد إجراء اختبار تحديد المستوى لتتخطى إلى الأمام. وافق عليه، فيُجري سؤالين لكل مستوى، 30 ثانية لكل سؤال، بدون صفحات دليل. أخطئ في واحد فيكون هذا هو مستواك الابتدائي.
بيض عيد الفصح
8 إنجازات مخفية. تعرض شاشة الإحصائيات عدد ما وجدته منها.
التحكم
| المفتاح | الإجراء |
|---|---|
| Enter | إرسال الإجابة |
| Tab | تبديل صفحة الدليل |
| Ctrl+d | خروج (ملخص الجلسة) |
| Esc | وضع Vi العادي |
| ? | جميع اختصارات المفاتيح (الوضع العادي) |
البيانات
يُحفظ التقدم في ${XDG_DATA_HOME:-~/.local/share}/cmdchamp/.
الترخيص
MIT