المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : التعرف على Shell عن قرب


iMatter
02-06-2008, 07:01
سنتناول في هذا الدرس إن شاء الله البنود التالية:

1- سرد لخصائص الأصداف Shells المستخدمة في نظام لينوكس.
2- شرح لطريقة عمل ملفات التكوين Configuration files.


يمكن تعريف الصدفة Shell بأنها البرنامج الذي يتلقى الأوامر التي يدخلها المستخدم قبل القيام بتنفيذها من قبل اللب Kernel ، إذا فالصدفة ليست جزءا من اللب بل تعتبر الواجهة الابتدائية التي تفصل المستخدم عن اللب.

هناك العديد من الأصداف التي من الممكن استخدامها مع لينوكس، و فيما يلي سرد لأشهرها:

1-( Bourne shell (sh.

2-(C shell (csh.

3-(Korn shell (ksh.

4-(Bourne Again shell (bash.

كتبت (Bourne shell (/bin/sh بواسطة Steve Bourne و قد تم استيلاد جميع الأصداف الحديثة من هذه الصدفة الأم. تجد هذه الصدفة في جميع أنظمة يونكس، و على الرغم من أنها لا تحتوي على الكثير من الخصائص مثل الأصداف الحديثة إلا أنها تعتبر لغة scripting language مشهورة.
أما (C shell (/bin/csh فقد كتبت بواسطة William Joy و هي تشبه في أسلوبها لغة البرمجة C، و لكنها أقل مناسبة لاستخدامها كلغة scripting language بالمقارنة مع غيرها من الأصداف.

ملاحظة: يمكن تعريف script بأنها تسلسل من أوامر shell و التي يتم تشغيلها في النمط الدفعي batch mode و يمكن تشبيه shell script بالملف الدفعي batch file في الدوس.

أما(Korn shell (/bin/ksh فهي تجمع وظائف صدفة C مع المحافظة على التوافق مع صدفة Bourne shell ، و هي صدفة مشهورة في أنظمة يونكس.

أما صدفة (Bourne Again shell (/bin/bash فهي من الصدفات المشهورة و المنتشرة في أنظمة لينوكس و هي متوافقة مع sh و تحتوي على أفضل ما في كل من csh و ksh.

موجه الأوامر في صدفة C ينتهي بالرمز % بينما تستخدم باقي الأصداف الرمز $.

يمكن تقسيم الأوامر في يونكس و لينوكس إلى نوعين:

1- أوامر داخلية بالنسبة للصدفة.

2- أوامر خارجية بالنسبة للصدفة.

الأوامر الداخلية محددة بنوع الصدفة و تؤثر فقط على الصدفة المستخدمة، و مثال عليها الأمر cd.

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

1- etc/profile/

2- etc/csh.cshrc/

3- profile.

4- cshrc.

أما مجلدات لينوكس الشائعة فهي:

1-usr/local/bin/

2-usr/bin/

3-bin/

4-usr/bin/x11/

5-usr/games/

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

command/.

مع استبدال command بالأمر المراد تشغيله.
للتعرف على الصدفة التي تستخدمها اكتب الأمر التالي:

Echo $SHELL

و ستحصل على نتيجة شبيهة بما يلي:

bin/bash/

لنتعرف عن قرب على الصدفة bash و التي تعد الأكثر شهرة و استخداما في أنظمة لينوكس.

تتمتع bash بالمميزات التالية:

1- job control و تسمح هذه الميزة للمستخدم بإدارة عدة عمليات يتم تنفيذها في نفس الوقت، و بالتالي يستطيع المستخدم إيقاف ما يشاء من العمليات و استئنافها فيما بعد.

2- اختصار الأوامر الطويلة بأوامر مختصرة و تم ذلك باستخدام الأمر alias كما في المثال التالي:

'Alias d='ls-lF

يقوم الأمر السابق باختصار الأمر ls-lF بالحرف d و هكذا كل مرة تكتب فيها الحرف d و تضغط على Enter سيتم تنفيذ الأمر ls-lF ، تستطيع إضافة أي عدد من الاختصارات للأوامر التي تشاء في الملف .bashrc لتكون متوفرة كل مرة تشغل فيها لينوكس.

3- الإكمال التلقائي للأوامر و أسماء الملفات و هذا يسمح لك بكتابة أول حروف من الأمر أو اسم الملف المراد و من ثم اضغط على Tab و سيحاول لينوكس إكماله تلقائيا، أما إذا رغبت بإكمال أمر ما و لكن هناك عدة أوامر تبدأ بنفس الحروف على سبيل المثال كتبت mk و أردت إكمال الأمر فعليك الضغط مرتين على Tab لتحصل على قائمة بالأوامر و أسماء الملفات التي تبدأ بالحرفين mk.

4- توفير واجهة لتحرير الأوامر.

5- إمكانية تحرير الأوامر السابقة بدلا من إعادة كتابتها، و لاستدعاء أي أمر سابق و التنقل بين الأوامر التي سبق كتابتها تستطيع الضغط على السهم العلوي أو السفلي إلى أن تصل إلى الأمر المطلوب ثم تضغط على Enter. تحفظ bash آخر خمسين أمرا سبق كتابتها.

6- تحرير الأوامر باستخدام Ctrl+Tو الذي يسمح باستبدال الرمز على يسار المؤشر بالرمز تحت المؤشر كما في المثال التالي:

لنفترض أنك كتبت الكلمة mroe و أردت تصحيحها إلى more فيكفي أن تضع المؤشر على الحرف o و تضغط على CTRL+T و سيتم تصحيح الكلمة.

7- إمكانية استخدام الرموز لاختصار مجموعة من أسماء الملفات.

تستطيع التحكم بالبيئة التي تعمل عليها في لينوكس باستخدام ملفات التكوين configuration files و تعرف أيضا بملفات run control (rr) و تسمى أيضا الملفات النقطية dot files و ذلك لأنها تبدأ دوما بالنقطة (.).

عندما يتم استدعاء bash عند الولوج إلى النظام فإنها تقوم بقراءة نوعين من ملفات التكوين:

1- system-wide configuration files، و من أمثلتها : etc/profile/ و etc/bashrc/.

2- user-defined initialization files و يمكن أن تجدها في المجلد الرئيسي للمستخدم home directory.

و بينما تعتبر ملفات النوع الأول عامة في طبيعتها فإن ملفات النوع الثاني تعكس الخصائص و التفضيلات الشخصية للمستخدم.

و هكذا فإن bash تقوم أولا بتنفيذ الأوامر في /etc/profile و من ثم تبحث عن الملفات التالية في المجلد الرئيسي للمستخدم:

1- bash_profile./~

2- bash_login./~

3- profile./~

و تقوم بتنفيذ الأوامر فقط في أول ملف تجده من الملفات السابقة بالترتيب دون إكمال باقي الملفات.

و بهذا نكون قد انتهينا من درس اليوم و إلى اللقاء مع الدرس المقبل.

AgainstISR&USA
03-06-2008, 04:04
جميل يا اخي . واصل بارك الله فيك
اذا نزلت خمسة دروس راح اثبت لك الدرس الاول بروابط باقي الدروس في واجهة القسم.
واذا نزلت كمية معتبرة من الدروس بمشاركات معقولة نفتح لك قسم باذن الله .
دورة مكتملة ومنظمة راح اضيف لك بنر علي واجهة المنتدي ان شاء الله .

kaf-laarous
04-06-2008, 11:09
بداية ممتازة iMatter ،
بالتوفيق ،

kaf-laarous

ROCKSTA--
26-06-2008, 12:21
مشكووووووور جدا موفق بإذن الله ... لك مني أجمل تحية .

عبدالرحمن المهد
12-07-2008, 07:51
شكراااااااااااااااااااااااااااا

Newbies
12-07-2008, 10:35
شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .

Ukjent
18-11-2008, 10:42
الله ينور قلبك

بارك الله فيك

tuvw286
05-12-2008, 12:31
I think this is a great addition for prot warriors. I leveled a warrior first and a year later a prot pally. When I was prot my warrior had a hell of a time killing a mob but I found grabbing extra mobs on my pally was faster than killing a single mob. We supply cheap wow gold (http://www.inwowgold.com), the cheapest wow gold to our loyal and reliable customers. You may buy cheap wow gold (http://www.inwowgold.com) here. There is wow gold (http://www.inwowgold.com) for sale; you can buy very cheap world of warcraft gold (http://www.inwowgold.com) here. We have mass available stock of wow power leveling (http://www.inwowgold.com/power-leveling/) on most of the servers, so that we can do a really instant way of wow gold delivery.