الحلقة الدراسية الثامنة: أوامر لينوكس



أولا: أوامر أساسية


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

كما سبق أن ذكرنا في الحلقات السابقة فإننا نستطيع الوصول الى موجه الأوامر من خلال تشغيل Terminal بالضغط على أيقونته في شريط المهام.

نستطيع استخدام الكثير من الأوامر مع لينوكس، حيث تبدأ هذه الأوامر باسم الأمر و يمكن أن يتبع بخيارات أو متغيرات، مع الفصل بين الأوامر بفراغ واحد أو أكثر فلينوكس لا يهتم بعدد الفراغات بين الأوامر، و لكن عليك التنبه من حالة الأحرف هل هي صغيرة أو كبيرة لأن لينوكس يفرق بين USERADD و useradd.

من الأوامر الأولى التي علينا تعلمها هي تلك التي تساعدنا في تصفح نظام الملفات.

نظام الملفات الافتراضي في لينوكس يبدو كما يلي:



حيث يرمز للمجلد الرئيسي ب / و يطلق عليه الجذر أو root و يندرج تحته مجموعة من المجلدات مثل boot و home و usr و يمكن أن يحتوي على غيرها.

عندما تدخل الى النظام فإنك بشكل تلقائي تكون داخل مجلد يحمل اسمك و يكون داخل المجلد home كما في الصورة التالية:



أما من خلال نافذة Terminal فسيتم التعبير عن موقعك كما يلي:

$[walid@localhost walid]

و تشرح الصورة التالية هذا التعبير:



و يشير الرمز $ الى أن المستخدم الحالي ليس مديرا أما إذا تم الدخول كمدير أو root فإن الرمز سيكون # بينما اسم المستخدم فسيعبر عنه ب root.
إذا كنت موجودا في أي مجلد كان و تريد أن تعرف مكانك فبإمكانك استخدام الأمر pwd و هو اختصار ل print current working directory و من ثم تضغط على Enter و عندها ستحصل على المسار الحالي الذي توجد داخله، فإذا قمت بذلك من داخل المجلد الافتراضي فستظهر لك النتيجة التالية:

/home/walid

طبعا سيظهر اسمك بدلا من walid.

إذا رغبت بمعرفة مساحة القرص الفارغة المتوفرة على نظام ملفاتك فاستخدم الأمر df و ستحصل على النتيجة التالية:



للتغيير الى مجلد ما تستطيع استخدام الأمر cd متبوعا باسم مجلد موجود داخل المجلد الحالي أو المسار الكامل لأي مجلد.

فإذا افترضنا وجود مجلد اسمه Islam موجود داخل المجلد الحالي walid، فلكي ننتقل إليه نستخدم الأمر:

cd walid

أما إذا رغبنا بالانتقال الى مجلد آخر اسمه Palestine موجود داخل المجلد Jihad داخل المجلد usr فنستخدم الأمر التالي:

cd /usr/Jihad/Palestine

تستطيع في أي وقت العودة الى مجلدك الافتراضي ( walid في مثالنا الحالي) باستخدام الأمر cd دون أي إضافة.

أما إذا رغبت في التوجه الى المجلد الرئيسي root فاستخدم الأمر:

/ cd

أما للعودة الى المجلد السابق الذي كنت تتصفحه فاستخدم الأمر:

- cd

أما للانتقال الى مجلد أعلى مثلا من المجلد walid الى المجلد home فاستخدم الأمر:

.. cd

للتعرف على المستخدمين الموجودين حاليا في النظام تستطيع استخدام الأمر who و ستحصل على أسماء المستخدمين و وقت ولوجهم الى النظام، أما إذا استخدمت الأمر finger فستحصل على معلومات إضافية مثل الاسم الحقيقي لكل مستخدم و موقع تواجده حاليا، فإذا رغبت بالمزيد من المعلومات مثل الأوامر التي يشغلها كل مستخدم فاستخدم الأمر w.

للتعرف على معلومات عن نفسك فاستخدم الأمر id كما تستطيع تغيير معلوماتك التي تظهر لغيرك من المستخدمين عند استخدامهم للأمر finger، بأن تستخدم الأمر chfn

تستطيع معرفة الوقت و التاريخ باستخدام الأمر date ، و إذا رغبت بالحصول على تقويم شهري فاستخدم الأمر cal و إذا أحببت الحصول على التقويم الشهري لعام محدد فاستخدم الأمرcal متبوعا بالعام المطلوب كما في المثال التالي:

cal 2002

للحصول على قائمة بمحتويات مجلد ما تستطيع استخدام الأمر ls و هو اختصار ل list، فإذا استخدمت هذا الأمر دون أي إضافات فستحصل على محتويات المجلد الحالي الذي تعمل عليه، أما إذا رغبت بمعرفة محتويات مجلد معين فعليك تحديد مساره كاملا، فلمعرفة محتويات المجلد Palestine فاستخدم الأمر التالي:

ls /usr/Jihad/Palestine

أما إذا رغبت بالحصول على معلومات تفصيلية عن محتويات المجلد فاستخدم الأمرls –l كما يلي:

ls –l /usr/Jihad/Palestine

أما إذا رغبت بالحصول على قائمة محتويات مصنفة فاستخدم الأمر ls –F و انتبه أن الحرف هو F و ليس f.

لتمييز الملفات القابلة للتنفيذ عند سرد محتويات أي مجلد سنجد أن الملف القابل للتشغيل قد ألحق الرمز * بنهايته مثلا ملف تشغيل Yahoo Messenger ستجده بهذا الشكل:

*ymessenger

إذا رغبت بالحصول على قائمة بجميع الملفات في المجلد بما فيها الملفات المخفية فاستخدم الأمر ls –a و عندها ستظهر جميع الملفات حتى المخفية و التي سيتميز اسمها بأنه يبدأ بنقطة كمثال :

bashrc.

للحصول على قائمة محتويات مرتبة وفقا لوقت إنشائها الأحدث فالأقدم استخدم الأمر ls –t ، أما لعكس الترتيب (الأقدم فالأحدث) فاستخدم الأمر التالي:

ls –tr
تستطيع دمج أكثر من خيار مع الأمر ls ، فمثلا للحصول على قائمة تفصيلية للمحتويات مرتبة زمنيا بشكل عكسي نستخدم الأمر كما يلي:

ls –ltr

أحيانا عند البحث عن ملف معين أو مجموعة من الملفات قد لا تتذكر الاسم المضبوط له أو المعلومات التي يحتويها بالضبط، فمثلا قد تبحث عن ملف أسماء الصحابة و لكنك لا تستطيع أن تتذكر اسم الملف هل هو sahaba أو sa7aba أو assahaba، و مثال آخر أنك تود البحث عن جميع الملفات التي تحتوي على معلومات معينة مثل اسم Mohammed و هكذا. للتغلب على مثل هذه المشاكل نستخدم بعض الرموز مع أوامر لينوكس لتسهل علينا الوصول الى غايتنا كما يلي:

1- الرمز ? عند استخدامه فإنه يرمز لأي حرف فمثلا لنفترض أننا نريد أن نبحث عن ملف اسمه مكون من 3 أحرف و لكن نسينا الحرف الأوسط فاستخدمنا الأمر التالي:

ls b?g

فحصلنا على قائمة تحتوي على أسماء جميع الملفات المكونة من 3 أحرف و تبدأ بالحرف b و تنتهي بالحرف g بغض النظر عن الحرف الأوسط، لهذا قد نحصل على قائمة بالملفات التالية مثلا:

bag bug big

مثال آخر نود الحصول على قائمة بأسماء الملفات المكونة من 5 أحرف، لهذا الغرض نستخدم الأمر التالي:

????? ls

2- الرمز * و هو يرمز لأي عدد من الأحرف أو الرموز التي تليه فمثلا إن استخدمنا الأمر التالي:

*ls mon

فسنحصل على قائمة بأسماء جميع الملفات التي تبدأ ب mon بغض النظر عن باقي الاسم كمثال قد نحصل على قائمة بالملفات التالية:

monday month money

3- القوسين [] و عند استخدامهما يتم اعتماد أي حرف أو رمز من ضمن الأحرف أو الرموز المحصورة بينهما فمثلا إذا استخدمنا الأمر التالي:

ls [Ss]hare

فسنحصل على قائمة بالملفات التالية:

Share share

أما إذا استخدمنا الأقواس بهذا الشكل [a-f] فسيتم اعتماد أي حرف بين a و f فمثلا عند استخدام الأمر التالي:

Ls b[a-f]g

فسنحصل على قائمة بأسماء جميع الملفات التي تبدأ ب b و تنتهي ب g بينما الحرف الأوسط قد يكون أي حرف في المدى بين الأحرف a و f كمثال قد نحصل على قائمة بالملفات التالية:

bag beg

أما إذا استخدمنا الرمز ^ كأول رمز بين القوسين فهذا يعني أنه ينطبق على أي حرف ما عدى الأحرف التي تلي الرمز بين القوسين، كمثال إذا استخدمنا الأمر التالي:

ls b[^a,f]g

فسنحصل على قائمة بأسماء الملفات التي تبدأ ب الحرف b و تنتهي ب g بينما الحرف الأوسط سيكون أي حرف ما عدى الحرفين a و f و كمثال قد نحصل على قائمة بالملفات التالية:

big beg

للبحث عن نص معين في ملف معين أو في مجموعة من الملفات نستخدم الأمر grep و هو اختصار ل global regular expression parse و هو قد يستخدم مع مجموعة من الرموز كما يلي و التي يجب أن تكتب بين علامتي " ":

1- الرمز ^ و هو يستخدم للبحث عن الأحرف أو الرموز التي تليه إذا جاءت في بداية أي سطر في ملف محدد أو في مجموعة من الملفات، فمثلا إذا رغبنا بالبحث في جميع الملفات داخل مجلد عن الكلمة Muslims على أن تكون في بداية السطر سنكتب الأمر كما يلي:

"grep "^Muslims

في هذا المثال يتم البحث في جميع الملفات، أما إذا رغبنا بالبحث في ملف معين فعلينا كتابة اسم الملف كمثال:

grep "^Muslims" ghutha.txt

و عندها ستظهر الأسطر التي تبدأ بكلمة Muslims في الملف ghutha.txt.

كما نستطيع البحث في نوع محدد من الملفات فمثلا للبحث في الملفات من النوع txt فقط نستخدم الأمر كما يلي:

grep "^Muslims" *.txt

أما إذا استخدمت الأمر و لكن دون استخدام الرمز ^ فستحصل على جميع الأسطر التي تحتوي على الكلمة Muslims في الملف المحدد أو في مجموعة الملفات.

2- الرمز $ و هو يستخدم للبحث عن الأحرف أو الرموز التي تسبقه إذا جاءت في نهاية أي سطر في ملف محدد أو في مجموعة من الملفات، فمثلا إذا رغبنا بالبحث في جميع الملفات داخل مجلد عن الكلمة Mecca على أن تكون في نهاية السطر سنكتب الأمر كما يلي:

'$grep 'Mecca

نلاحظ أنه عند استخدام الأمر grep مع الرمز $ فإننا نستخدم علامتي ' ' المفردة و ليس " ".

بهذا نأتي الى نهاية هذه الحلقة و نلتقي قريبا إن شاء الله مع المزيد من الأوامر.

 

 

 


Copyright © www.kettaneh.net