ما هي الخطوط العريضة لينكس وكيف يمكنك استخدامها

وفقا لويكيبيديا ، الحرف الأول هو أي حرف له معنى خاص ، مثل قيراط (^) ، علامة الدولار ($) أو علامة نجمية (*).

من حيث Linux ، هناك عدد معقول من هذه الأحرف الأولية ومعانيها تختلف باختلاف الأوامر أو البرامج التي تقوم بتشغيلها.

The Full Stop As A Metacharacter (.)

يتم استخدام المحطة الكاملة المتواضعة للتبرع بالموضع الحالي عند تشغيل الأوامر مثل cd أو find أو sh ولكن ضمن تطبيقات مثل awk و grep و sed ، يتم استخدامها للدلالة على أي حرف.

على سبيل المثال ، سيجد الأمر التالي جميع ملفات mp3 في المجلد الحالي وأدناه.

تجد . -name * .mp3

إذا قمت بتشغيل هذا الأمر في دليل العمل الحالي (pwd) ، فستحصل على الأرجح على نتائج تم إرجاعها ، على افتراض أنك تحتفظ بملفات mp3 في مجلد موسيقى داخل مجلد المنزل.

انظر الآن إلى هذا الأمر:

ps -ef | grep f..efox

يسرد الأمر ps جميع العمليات الجارية على جهاز الكمبيوتر الخاص بك. يأخذ الأمر grep خطوط الإدخال والبحث عن نمط.

لذلك يحصل الأمر ps -ef على قائمة عمليات التشغيل ويعطيها grep الذي يبحث عن أي سطر في القائمة التي تحتوي على f3.efox حيث. يمكن أن تعني أي شخصية.

إذا كان لديك فايرفوكس يعمل سوف تحصل على المباراة. وبالمثل ، إذا كان لديك برنامج يسمى fonefox أو تشغيل Freefox ، فسيتم إعادته أيضًا.

العلامة النجمية كخطوة أولية (*)

تعتبر العلامة النجمية من الحروف الأولية المعروفة عالميًا ، وتُستخدم لتعني 0 أو أكثر عند البحث عن نمط.

فمثلا:

تجد . -name * .mp3

تقوم * .mp3 بإرجاع تطابق لأي اسم ملف ينتهي بـ .mp3. وبالمثل ، كان بإمكاني استخدام العلامة النجمية باستخدام الأمر grep كالتالي:

ps -ef | grep F * efox

تجدر الإشارة إلى أن هذا يختلف اختلافًا طفيفًا لأن العلامة النجمية تعني الصفر أو أكثر ، بالإضافة إلى البحث عن فايرفوكس و facefox و fonefox ، كما يمكن أن تجد flutefox و ferretfox وحتى fefox فقط.

The Carat As A Metacharacter (^)

يتم استخدام قيراط (^) للدلالة على بداية سطر أو سلسلة. إذن كيف يتم استخدامها؟

يتم استخدام الأمر ls لسرد كافة الملفات الموجودة في مجلد كما يلي:

ليرة سورية

إذا كنت تريد معرفة جميع الملفات في مجلد يبدأ بسلسلة معينة مثل "gnome" ، فيمكن استخدام قيراط لتحديد هذه السلسلة.

فمثلا:

ls | grep ^ gnome

لاحظ أن هذا يسرد فقط الملفات التي تبدأ بـ gnome. إذا كنت تريد ملفات تحتوي على gnome في اسم الملف في أي مكان ، فسوف تعود مرة أخرى إلى العلامة النجمية.

في المثال أعلاه ، تقوم ls بإرجاع قائمة بأسماء الملفات وتمريرها إلى قائمة grep التي تستخدم لمطابقة النمط. grep يعرف أن رمز قيراط يعني العثور على أي شيء يبدأ بالشخصيات التي تأتي بعده وفي هذه الحالة ، إنه gnome.

رمز الدولار باعتباره عامًا ميتًا ($)

يمكن أن يكون لرمز الدولار معانٍ متعددة كحرف أولية في لينكس.

عندما تستخدم لمطابقة الأنماط ، فهذا يعني عكس قيراط ويشير إلى أي نمط ينتهي بسلسلة معينة.

فمثلا:

ls | grep png $

هذا يسرد كافة الملفات التي تنتهي بـ png.

يُستخدم رمز الدولار أيضًا للوصول إلى متغيرات البيئة داخل shell bash.

فمثلا:

كلب التصدير = مولي
صدى $ كلب

الكلب تصدير خط = مولي يخلق متغير بيئة تسمى كلب ويحدد قيمته إلى مولي. للوصول إلى متغير البيئة ، يتم استخدام رمز $. مع رمز $ يعرض بيان الكلب $ echo molly ولكن بدونه ، يعرض عبارة echo dog كلمة dog فقط.

الهروب من الحروف الأولية

في بعض الأحيان ، لا تريد أن يكون الحرف الأولي له معنى خاص. ماذا لو كان لديك ملف يسمى f.refox وملف يسمى firefox.

انظر الآن إلى الأمر التالي:

ls | grep f.refox

ما رأيك هو عاد؟ يتم إرجاع كل من f.refox و firefox لأن كلاهما يتطابقان مع النمط.

لإرجاع f.refox فقط ستحتاج إلى الهروب من الوقف الكامل ليعني في الواقع التوقف الكامل كما يلي:

ls | grep f \\

الحروف الأولية الشائعة ومعانيها

قائمة لينكس الحروف الأولية
حرف المعنى
. أي شخصية
* صفر أو أكثر من الشخصيات
^ مطابقة أي خط أو سلسلة تبدأ بنمط (أي ^ gnome)
$ مطابقة أي سطر أو سلسلة تنتهي بنمط (أي gnome $)
\ يهرب من الحرف التالي لإزالة معناه الخاص
[] تتطابق مع واحدة من القائمة أو النطاق (مثل ["abc" أو "def"] أو [1..9]
+ تطابق واحد أو أكثر سابقًا (على سبيل المثال grep a +)
؟ المباراة صفر أو واحدة تسبق