هل تعلم أنه يمكنك توقع الكلمات و استخدامها في لعبة السكرابل المعروفة فقط عبر أوامر الترمنال.
المتطلبات
- في البداية ستحتاج إلى أي توزيعة لينوكس لأنك لن تحتاج لأكثر من الترمتنال.
- ستحتاج كذلك للائحة بالكلمات داخل ملف txt لاستعمالها بواسطة grep
- معرفتك للعبة و لسطر الأوامر Terminal
الإنجاز
قم في البداية بتحميل لائحة بالكلمات مباشرة من أحد المواقع, مثال جاهز
wget http://www.sil.org/linguistics/wordlists/english/wordlist/wordsEn.txt -o words.txt
و هكذا يكون لديك ملف جاهز باسم words.txt
لنبدأ, داخل الترمنال أكتب
grep "ed$" words.txt
ستلاحظ على الفور أنه مدك بكافة الكلمات التي تنتهي ب ed لمجرد إضافتك لرمز الدولار $.
اكتب من جديد
grep "^th" words.txt
و هذه المرة سيمدنا grep بالكلمات التي تبدأ ب th.
كذلك يمكننا المزج بين الأمرين
grep "^zo*[m]*ed" words.txt
حيث طلبت هنا البحث عن كلمة تبدأ ب zo و تنتهي ب ed و استعملنا النجمة * للدلالة لأنه يمكن أن يكون أي حرف مكانهما كما يمكن أن لا تحتوي شيئا, أما m فللإشارة أنه يمكن إستعمال حرف m في الوسط
لنجرب شيئا جديدا.
grep "^m..t..s$" words
mantels
mantles
martyrs
masters
matters
mentors
misters
mittens
mortals
mortars
mottoes
mouthes
mutters
mystics
كما تلاحظون أعطانا جميع الكلمات التي تبدأ ب m يليها حرفان عشوائيان ثم حرف t و حرفان آخران ثم rs,
أي أني استعملت النقاط للدلالة على الأحرف التي أحتاجها.
و الآن مع أهم أداة.
grep "^[cftwabm]\{1,4\}are$" words.txt
aware
bare
care
fare
mare
ware
في هذا المثال لدى اللاعب كلمة لا تتجاوز سبعة أحرف تنتهي ب are فاحتاج لإضافة من حرف واحد إلى أربعة أحرف ليصبح المجموع سبعة, و لكن في نفس الوقت لا يملك إلا القطع التالية cftwabm و يريد استعمالها في كلمة, و باستخدام الأمر السابق أضهر أنه ليس بإمكانه استعمال غير الإحتمالات الستة الواردة.
أرجو أنكم قد استمتعتم.