Admin Admin
عدد المساهمات : 257 تاريخ التسجيل : 24/05/2011
| موضوع: الحلقة الدراسية التاسعة: أوامر لينوكس الثلاثاء يونيو 26, 2012 9:03 pm | |
|
Your browser does not support inline frames or is currently configured not to display inline frames.
الحلقة الدراسية التاسعة: أوامر لينوكس ثانيا: أوامر إعادة التوجيه تهتم أوامر إعادة التوجيه في لينوكس بتحويل محتوى ملف ما أو نتيجة تطبيق أمر الى ملف آخر أو إدخال لأمر جديد. فمثلا يقوم الأمر cat و هو اختصار لـ concatenation عند استخدامه مع الرمز < بإعادة توجيه محتوى ملف واحد أو أكثر من ملف الى ملف جديد و لننظر الى المثال التالي ليتضح المراد: عند استخدام الأمر التالي: cat file1 file2 file3 فسيتم عرض محتوى الملفات الثلاث بالترتيب على الشاشة، بينما إذا استخدمنا الأمر بالشكل التالي: cat file1 file2 file3 > file4 فسيتم تحويل محتوى الملفات الثلاث الى الملف الجديد file4 و للتأكد من ذلك من الممكن استخدام الأمر التالي الذي يعرض محتوى الملف file4 : cat file4 في المثال التالي سنقوم بإعادة توجيه ناتج أمر ما الى ملف: ls –F > listfile حيث سيتم إضافة ناتج الأمر ls –F و هو قائمة مصنفة لمحتويات المجلد الحالي الى الملف listfile و نستطيع باستخدام الأمر التالي إنشاء ملف جديد و من ثم الكتابة فيه و ذلك باستخدام تقنية إعادة التوجيه كما يلي: cat > newfile حيث سيقوم الأمر السابق بتوجيه ضرباتك على لوحة المفاتيح الى ملف جديد اسمه newfile و تستطيع بعد تنفيذك للأمر السابق أن تكتب ما شئت و سيتم تحوياه تلقائيا الى الملف newfile و عند رغبتك في التوقف عن الكتابة في الملف تستطيع الضغط على Ctrl+D، و هكذا سيحفظ كل ما كتبته في الملف newfile و لتتأكد من نجاحك استخدم الأمر cat newfile لعرض محتوى الملف الجديد newfile. و يجب التنويه أنه إذا استخدمنا الرمز < مع اسم ملف موجود مسبقا فسيتم إلغاء جميع محتوياته و الكتابة فوقها، أما إذا رغبنا بإضافة أي محتويات على ملف موجود مسبقا مع المحافظة على محتواه بحيث يتم إضافة أي كتابة جديدة الى نهاية الملف، فنستطيع استخدام الرمز<< بدلا من < واحدة، فمثلا عند استخدام الأمر التالي : cat file1 file2 file3 >> oldfile سيتم إضافة محتويات الملفات file1 و file2 و file3 الى نهاية الملف الموجود مسبقا oldfile كما نستطيع استخدام إعادة توجيه معكوس و ذلك بتحويل محتوى ملف ما ليكون إدخال لأمر ما و ذلك باستخدام الرمز > كما في المثال التالي: mail walid < letter حيث يقوم الأمر السابق بتوجيه محتوى الملف letter الى الأمر mail و الذي يقوم بإرسال الملف الى المستخدم walid. و نستطيع كذلك توجيه ناتج أمر ما كإدخال لأمر آخر باستخدام الرمز | كما في المثال التالي: cat tele1 tele2 tele3 | sort حيث يقوم الأمر السابق بتوجيه ناتج الأمرcat و الذي يقوم بعرض محتوى الملفات tele1 ,tele2, tele3 و التي تحتوي على أسماء أشخاص و أرقام هواتفهم، ثم يتم توجيه هذا المحتوى الى الأمر sort و الذي يقوم بترتيب الأسماء أبجديا و عرضها على الشاشة و بذلك سنحصل على قائمة مرتبة للأسماء الأولى للأشخاص المذكورين في الملفات الثلاث مع أرقام هواتفهم، فلو افترضنا أن محتوى الملف tele1 هو كما يلي: Mohammed Salim 165317 Saed Ahmad 123243 Khalid Ali 335216 و محتوى الملف tele2 كما يلي: Raed Jamal 116723 Ali Omar 224389 Kamal Othman 223312 أما الملف tele3 فمحتواه كما يلي: Badr Jasim 119876 Ilyas Idrissi 367890 Mamoun Ibrahim 187620 بعد تنفيذ الأمر المذكور أعلاه سنحصل على النتيجة التالية على الشاشة: Ali Omar 224389 Badr Jasim 119876 Ilyas Idrissi 367890 Kamal Othman 223312 Khalid Ali 335216 Mamoun Ibrahim 187620 Mohammed Salim 165317 Raed Jamal 116723 Saed Ahmad 123243 و هناك ميزة جيدة في أوامر لينوكس تسمح لك بتنفيذ أكثر من أمر في نفس الوقت فمثلا إذا رغبنا بتنفيذ أمر ما و نحن نعلم أن مدة تنفيذ هذا الأمر قد تطول فنستطيع أن ننفذ هذا الأمر في الخلفية و نقوم نحن بتنفيذ أي أوامر أخرى ريثما ينتهي تنفيذ ذلك الأمر، فعلى سبيل المثال نريد ترتيب محتوى ملف ما أبجديا و لكن حجم الملف كبير للغاية و بالتالي فترتيب محتواه سيستغرق وقتا طويلا، لهذا نستطيع توجيه تنفيذ هذا الأمر الى الخلفية باستخدام الرمز & في نهاية الأمر كما يلي: & sort file1 و هكذا سيتم تنفيذ الأمر في الخلفية و نستطيع حينها إدخال أي أوامر أخرى. إذا وضعت أكثر من ملف في الخلفية و رغبت في أي وقت بالتعرف على الأوامر و العمليات التي تعمل في الخلفية فتستطيع استخدام الأمر ps و الذي يأتي مع عدد من الخيارات مثل e و الذي يختار جميع العمليات، و f و الذي يعرض قائمة كاملة للعمليات التي تعمل في الخلفية و يكتب الأمر كما يلي: ps –ef و إذا استخدمت الأمر بالشكل التالي: ps –ef | grep khalid فسيتم عرض كافة العمليات التي يشغلها المستخدم khalid. من خلال تنفيذ الأمر تستطيع التعرف على كل عملية و المقدار الذي تستهلكه من قوة المعالج، و عند الرغبة بقتل أو إيقاف عملية ما تستطيع استخدام الأمر kill مع رقم العملية id الذي يظهر في القائمة كمثال: kill 1457 الأمر السابق سيوقف العملية ذات الرقم 1457. بهذا تنتهي حلقة اليوم، و ابقوا معنا للتعرف على المزيد من أوامر لينوكس.
|
Your browser does not support inline frames or is currently configured not to display inline frames.
الحلقة الدراسية التاسعة: أوامر لينوكس ثانيا: أوامر إعادة التوجيه تهتم أوامر إعادة التوجيه في لينوكس بتحويل محتوى ملف ما أو نتيجة تطبيق أمر الى ملف آخر أو إدخال لأمر جديد. فمثلا يقوم الأمر cat و هو اختصار لـ concatenation عند استخدامه مع الرمز < بإعادة توجيه محتوى ملف واحد أو أكثر من ملف الى ملف جديد و لننظر الى المثال التالي ليتضح المراد: عند استخدام الأمر التالي: cat file1 file2 file3 فسيتم عرض محتوى الملفات الثلاث بالترتيب على الشاشة، بينما إذا استخدمنا الأمر بالشكل التالي: cat file1 file2 file3 > file4 فسيتم تحويل محتوى الملفات الثلاث الى الملف الجديد file4 و للتأكد من ذلك من الممكن استخدام الأمر التالي الذي يعرض محتوى الملف file4 : cat file4 في المثال التالي سنقوم بإعادة توجيه ناتج أمر ما الى ملف: ls –F > listfile حيث سيتم إضافة ناتج الأمر ls –F و هو قائمة مصنفة لمحتويات المجلد الحالي الى الملف listfile و نستطيع باستخدام الأمر التالي إنشاء ملف جديد و من ثم الكتابة فيه و ذلك باستخدام تقنية إعادة التوجيه كما يلي: cat > newfile حيث سيقوم الأمر السابق بتوجيه ضرباتك على لوحة المفاتيح الى ملف جديد اسمه newfile و تستطيع بعد تنفيذك للأمر السابق أن تكتب ما شئت و سيتم تحوياه تلقائيا الى الملف newfile و عند رغبتك في التوقف عن الكتابة في الملف تستطيع الضغط على Ctrl D، و هكذا سيحفظ كل ما كتبته في الملف newfile و لتتأكد من نجاحك استخدم الأمر cat newfile لعرض محتوى الملف الجديد newfile. و يجب التنويه أنه إذا استخدمنا الرمز < مع اسم ملف موجود مسبقا فسيتم إلغاء جميع محتوياته و الكتابة فوقها، أما إذا رغبنا بإضافة أي محتويات على ملف موجود مسبقا مع المحافظة على محتواه بحيث يتم إضافة أي كتابة جديدة الى نهاية الملف، فنستطيع استخدام الرمز<< بدلا من < واحدة، فمثلا عند استخدام الأمر التالي : cat file1 file2 file3 >> oldfile سيتم إضافة محتويات الملفات file1 و file2 و file3 الى نهاية الملف الموجود مسبقا oldfile كما نستطيع استخدام إعادة توجيه معكوس و ذلك بتحويل محتوى ملف ما ليكون إدخال لأمر ما و ذلك باستخدام الرمز > كما في المثال التالي: mail walid < letter حيث يقوم الأمر السابق بتوجيه محتوى الملف letter الى الأمر mail و الذي يقوم بإرسال الملف الى المستخدم walid. و نستطيع كذلك توجيه ناتج أمر ما كإدخال لأمر آخر باستخدام الرمز | كما في المثال التالي: cat tele1 tele2 tele3 | sort حيث يقوم الأمر السابق بتوجيه ناتج الأمرcat و الذي يقوم بعرض محتوى الملفات tele1 ,tele2, tele3 و التي تحتوي على أسماء أشخاص و أرقام هواتفهم، ثم يتم توجيه هذا المحتوى الى الأمر sort و الذي يقوم بترتيب الأسماء أبجديا و عرضها على الشاشة و بذلك سنحصل على قائمة مرتبة للأسماء الأولى للأشخاص المذكورين في الملفات الثلاث مع أرقام هواتفهم، فلو افترضنا أن محتوى الملف tele1 هو كما يلي: Mohammed Salim 165317 Saed Ahmad 123243 Khalid Ali 335216 و محتوى الملف tele2 كما يلي: Raed Jamal 116723 Ali Omar 224389 Kamal Othman 223312 أما الملف tele3 فمحتواه كما يلي: Badr Jasim 119876 Ilyas Idrissi 367890 Mamoun Ibrahim 187620 بعد تنفيذ الأمر المذكور أعلاه سنحصل على النتيجة التالية على الشاشة: Ali Omar 224389 Badr Jasim 119876 Ilyas Idrissi 367890 Kamal Othman 223312 Khalid Ali 335216 Mamoun Ibrahim 187620 Mohammed Salim 165317 Raed Jamal 116723 Saed Ahmad 123243 و هناك ميزة جيدة في أوامر لينوكس تسمح لك بتنفيذ أكثر من أمر في نفس الوقت فمثلا إذا رغبنا بتنفيذ أمر ما و نحن نعلم أن مدة تنفيذ هذا الأمر قد تطول فنستطيع أن ننفذ هذا الأمر في الخلفية و نقوم نحن بتنفيذ أي أوامر أخرى ريثما ينتهي تنفيذ ذلك الأمر، فعلى سبيل المثال نريد ترتيب محتوى ملف ما أبجديا و لكن حجم الملف كبير للغاية و بالتالي فترتيب محتواه سيستغرق وقتا طويلا، لهذا نستطيع توجيه تنفيذ هذا الأمر الى الخلفية باستخدام الرمز & في نهاية الأمر كما يلي: & sort file1 و هكذا سيتم تنفيذ الأمر في الخلفية و نستطيع حينها إدخال أي أوامر أخرى. إذا وضعت أكثر من ملف في الخلفية و رغبت في أي وقت بالتعرف على الأوامر و العمليات التي تعمل في الخلفية فتستطيع استخدام الأمر ps و الذي يأتي مع عدد من الخيارات مثل e و الذي يختار جميع العمليات، و f و الذي يعرض قائمة كاملة للعمليات التي تعمل في الخلفية و يكتب الأمر كما يلي: ps –ef و إذا استخدمت الأمر بالشكل التالي: ps –ef | grep khalid فسيتم عرض كافة العمليات التي يشغلها المستخدم khalid. من خلال تنفيذ الأمر تستطيع التعرف على كل عملية و المقدار الذي تستهلكه من قوة المعالج، و عند الرغبة بقتل أو إيقاف عملية ما تستطيع استخدام الأمر kill مع رقم العملية id الذي يظهر في القائمة كمثال: kill 1457 الأمر السابق سيوقف العملية ذات الرقم 1457. بهذا تنتهي حلقة اليوم، و ابقوا معنا للتعرف على المزيد من أوامر لينوكس.
|
| |
|