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
بهذا نكون قد انتهينا من درس اليوم و ما زلنا مستمرين في رحلة اكتشاف لينوكس.