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



ثالثا: أوامر إدارة الملفات.

سنتناول في هذا الدرس الأوامر التالية:

1- أوامر إدارة الملفات و المجلدات من نسخ و نقل و حذف و إعادة تسمية و إنشاء اختصارات: cp ، ln ، mv ، rm ، mkdir و rmdir.

2- أوامر عرض الملفات و تصفحها: head ، tail ، more ، less ، file ، grep و wc.

لنسخ ملف ما نستخدم الأمر cp متبوعا باسم الملف ثم الوجهة كما في المثال التالي:

cp file1 dir

سيقوم الأمر السابق بنسخ الملف file1 الى المجلد dir ، أما إذا استخدمنا الأمر السابق كما يلي:

cp file1 file2

فسنحصل على نسخة من الملف file1 و سيكون اسمها file2 و ستكون في نفس المجلد الموجود فيه الملف الأصلي file2.

لإنشاء اختصار أو رابط لملف ما نستخدم الأمر ln ، و علينا في البداية أن نعرف أن هناك نوعين من الاختصارات أو الروابط في لينوكس :

1- رابط صلب.

2- رابط رمزي.

أما الرابط الصلب فيقوم بإنشاء اختصار للملف الأصلي في مكان آخر و يكون هذا الاختصار عبارة عن نسخة طبق الأصل من الملف الأصلي و قد يتساءل أحدنا : إذن ما الفرق بينه وبين أمر النسخ السابق؟ و نجيب فنقول أن هذا الاختصار يراقب كل ما يجري للملف الأصلي بحيث أن أي تغيير يتم إجراؤه على الملف الأصلي يتم تطبيقه تلقائيا على الاختصار الجديد و هذا بطبيعة الحال لا يتوفر من خلال استخدام الأمر cp. يمكن إنشاء هذا الاختصار للملفات فقط و لا يصلح للمجلدات.

و يتم كتابة الأمر ln متبوعا باسم الملف الأصلي ثم الوجهة المراد إنشاء الاختصار فيها.

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

و يكتب هذا الأمر كما يلي:

ln –s dir1/file dir2/file

حيث يمثل dir1/file الملف المصدر و يمثل dir2/file الوجهة كما في المثال التالي:

ln –s /home/walid/Islam /dev/Khalid/Islam

حيث سيتم إنشاء اختصار للملف Islam في المجلد /dev/khalid

لنقل الملفات أو إعادة تسميتها نستخدم الأمرmv متبوعا بالملف المصدر ثم الملف الوجهة، فبينما يقوم الأمر cp بعمل نسخة من الملف الأصلي فإن الأمر mv يقوم بنقل الملف الأصلي من مكانه الى مكان آخر أما إذا استخدمناه لنقل الملف المصدر الى ملف وجهة موجود في نفس المجلد فالذي يحصل هو إعادة تسمية الملف الأصلي.

فإذا افترضنا أننا نريد نقل الملف Jihad من المجلد walid الى المجلد الفرعي Palestine نكتب الأمر كما يلي مع افتراض أننا موجودون داخل المجلد walid:

mv Jihad Palestine

أما إذا رغبنا بإعادة تسمية الملف السابق الى اسم shahada فنكتب الأمر كما يلي:

mv Jihad shahada

أي أن الأمر يبحث أولا عن مجلد فرعي باسم shahada فإذا لم يجد فإنه يدرك أن المطلوب هو إعادة تسمية الملف الأصلي.

كما تستطيع نقل الملف و إعادة تسميته في آن واحد كما في المثال التالي:

mv Jihad Palestine/shahada

حيث سينقل الملف Jihad الى المجلد Palestine ثم سيعاد تسميته الى shahada.

لإنشاء مجلد فرعي نستخدم الأمر mkdir و لحذفه نستخدم الأمر rmdir

فمثلا لإنشاء مجلد جديد باسم Muslim داخل المجلد walid و نفترض أننا موجودون هناك حاليا نكتب الأمر كما يلي:

mkdir Muslim

لحذف المجلد السابق نكتب الأمر التالي:

rmdir Muslim

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

لحذف الملفات نستخدم الأمر rm متبوعا باسم الملف، و إذا رغبنا بحذف أكثر من ملف نكتب أسماء الملفات تباعا كما في المثال التالي:

rm file1 file2 file3

حيث سيتم حذف الملفات file1 و file2 و file3.

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



حيث يبين العمود المظلل عدد الاختصارات لكل ملف، حيث يبدو أن الملف departments ليس له أي اختصار لهذا يحمل الرقم 1، بينما الملف actions فله اختصار واحد و لهذا يحمل الرقم 2 و هكذا. أما لحذف جميع الملفات في مجلد ما نستخدم الأمر rm –r و يمكن استخدام هذا الأمر القوي لحذف مجلد ما و كافة محتوياته كما في المثال التالي:

rm –r Muslim

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

عند رغبتك بالتعرف على أي أمر من أوامر لينوكس و الخيارات المصاحبة له تستطيع استخدام الأمر man متبوعا باسم الأمر الذي تود التعرف عليه، كما في المثال التالي:

man ln

حيث سيعرض شرح للأمر ln و خياراته المختلفة ، و لكن لتستفيد من هذه الخاصية عليك أن تختار تنصيب وثائق المساعدة Manuals عند إعداد لينوكس.

أحيانا عند استعراض محتويات ملف ما يكون المحتوى أكبر مما يتسع في شاشة واحدة لعرضه لهذا لابد من استخدام أوامر خاصة لاستعراض الملف صفحة فصفحة أو أقل، من أمثلة هذه الأوامر more و less و هما يقومان بنفس المهمة إلا أن الأمر less يسمح بتصفح محتويات الملف الى الأمام و الى الخلف بينما لا يسمح الأمر more سوى بالتصفح للأمام.

فمثلا لعرض محتويات الملف Jihad نكتب الأمر كما يلي:

less Jihad

و سيتم عرض الصفحة الأولى من الملف و للانتقال إلى الصفحة التالية نضغط على شريط المسافة Spacebar على لوحة المفاتيح، و للعودة للصفحة السابقة نضغط على حرف B على لوحة المفاتيح، و للخروج من تصفح الملف نضغط على Q على لوحة المفاتيح.

كما تستطيع تصفح عدد معين من الأسطر في ملف ما باستخدام مجموعة من الأوامر، فمثلا يقوم الأمر head بعرض الأسطر العشر الأولى من الملف و يكتب كما يلي:

head Jihad

أما إذا رغبنا بعرض عدد معين من الأسطر مثلا 25 سطر نكتب الأمر كما يلي:

head -25 Jihad

كما نستطيع عرض آخر 10 أسطر من الملف باستخدام الأمر tail كما يلي:

tail Jihad

أما إذا رغبنا بعرض عدد معين من الأسطر مثلا 20 سطر من نهاية الملف نكتب الأمر كما يلي:

tail -20 Jihad

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

file Jihad

و سيتم عندها عرض نوع الملف كما يلي:

Jihad: English text

كما تستطيع التعرف على أنواع جميع الملفات في المجلد الحالي باستخدام الأمر:

* file

للبحث عن كلمة ما أو مجموعة من الكلمات داخل ملف معين نستخدم الأمر grep ، فإذا رغبنا مثلا بالبحث عن الكلمة shahada في الملف Jihad نكتب الأمركما يلي:

grep shahada Jihad

و سيتم عرض جميع الأسطر التي تحتوي على الكلمة shahada في الملف Jihad .

علينا التنبه أن الأمر grep يفرق بين الأحرف الكبيرة و الصغيرة لهذا فالأمر السابق لن يعرض الأسطر التي تحتوي على الكلمة Shahada، أما إذا رغبنا أن يتجاهل هذا الأمر حالة الأحرف فنضيف له –i كما يلي:

grep –i shahada Jihad

تستطيع التعرف على المزيد حول ملفاتك مثل عدد الأسطر و عدد الكلمات و عدد الأحرف في ملف ما باستخدام الأمر wc كما يلي:

1- للتعرف على عدد الأسطرLines في الملف Jihad نكتب الأمر كما يلي:

wc –l Jihad

2- للتعرف على عدد الكلمات words في الملف Jihad نكتب الأمر كما يلي:

wc –w Jihad

3- للتعرف على عدد الأحرف characters في الملف Jihad نكتب الأمر كما يلي:

wc –c Jihad

بهذا نكون قد انتهينا من درس اليوم و ما زلنا مستمرين في رحلة اكتشاف لينوكس.

 

 

 


Copyright © www.kettaneh.net