Click Here to Go HomePage http://www.linux-sevenler.org
مهمان   به  GNUIran.org  خوش آمدید پنجشنبه، ۰۹ فروردین ۱۴۰۳ 
نکته ها و ترفند ها

برای نصب یک بسته ی RPM در خط فرمان و با مجوز ریشه :
#rpm -Uvh  package-x.y.z-t.i386.rpm

--

جستجو در سایت




جستجوی پیشرفته
جستجو در انجمن‌ها

پلاگین فایرفاکس

وضعیت کاربران سایت
مدیر
هیچیک از مدیران حاضر نیست
مدیر افتخاری
هیچ مدیر کمکی حاضر
ناظران
هیچ مدیر کمکی حاضر
اعضا:
جدیدترین:جدید امروز:0
جدیدترین:جدید دیروز:0
جدیدترین:مجموع:1040
جدیدترین:جدیدترین:
RezaJafary
اعضا:حاضر
اعضا:اعضا:0
مهمان‌ها:مهمان‌ها:1
مجموع:مجموع:1
کاربران حاضر
هیچ کاربر حاضری وجود ندارد

پوسته چیست؟(What's shell)

(1387 مجموع کلمات موجود در متن)
(15643 بار مطالعه شده است)  نسخه چاپی

نویسنده: نوید

نام مقاله: پوسته چیست؟ (What's shell)

نویسنده : نوید


I.پوسته

به احتمال زیاد تا کنون بیشتر یا فقط با محیط های با رابط گرافیکی(GUI) کار کرده اید ، اما رابط کاربر دیگری که لینوکس و سایر سیستم عامل های شبه یونیکس یا برپایه ی یونیکس آن را دارند رابط خط فرمان یا Command Line Interface است که به اختصار CLI می نامند.قدرت حقیقی لینوکس و یونیکس در این رابط نهفته است و این رابط خط فرمان است که به مدت ۳۰ سال است که یونیکس را به عنوان قدرت مند ترین سیستم عامل مطرح کرد و اکنون این قدرت نهفته در تمام سیستم های شبیه یا برپایه ی یونیکس مانند لینوکس وجود دارد. زمانی می توان با یک سیستم عامل راحتر کار کرد که امکان کار با خط فرمان در آن فراهم شده باشد و در لینوکس این مهم صورت گرفته.

پوسته یا شل(shell) یک رابط است با ظاهری مانند آنچه در MS-DOS آن را دیده اید . البته در اصل پوسته (shell) یک رابط است میان انسان و هسته ی سیستم عامل که زبان انسان ها را به زبان ماشین تبدیل می کند تا هسته (Kernel) سیستم عامل آن را بفهمد . می تواندر یک تجسم غیر رسمی گفت که میزکار های ویندوز(windows) و مکینتاش (Macintosh OS) نیز یک پوسته ی گرافیکی هستند که رابط میان انسان و هسته ی این سیستم عامل هاست و زبان انسان را به زبان ماشین که برای هسته قابل فهم باشد ترجمه می کند. می توانید این رابطه را در شکل شماره ی (۱) ببینید.

شکل شماره ی ۱

در طول مدت بوجود آمدن یونیکس تا انتشار نهایی لینوکس پوسته های بسیاری منتشر شده و پوسته یک سیر تکاملی را پشت سر گزارده ، ما در بخش بعد ( همین مقاله ) سعی خواهیم کرد تا شما را با این سیر تحولی آشنا کنیم و در مقالات بعد به نهوه ی کار با این پوسته یا خط فرمان از مبتدی تا سطوح بالا تر خواهیم پرداخت.

II.انواع پوسته

در این بخش به معرفی چند نمونمه ی معروف پوسته های مختلف خواهیم پرداخت البته در لینوکس می توان از تمام این پوسته ها استفاده کرد و در اغلب توزیع های کامل تمام این پوستهها یافت می شوند اما پوسته ی پیش فرض اغلب ( اغلب نه تمام لینوکس ها ) پوسته ی bash می باشد ، دلیل این انتخاب قدرت و به روز بودن این پوسته و علاوه بر این ها انتشار این پوسته بر اساس مجوز GNU/GPL می باشد . ما رد این جا به ترتیب پوسته های Bourn shell و C shell و Korn shell و Bourn again shell و tch shell را مورد بررسی قرار خواهیم داد.

۱. Bourne Shell یا sh

در اصل این پوسته در ازمایشگاه های بل توسط استیون بورن ( Stiven Bourne) برای سیستم عامل AT&T UNIX نوشته شد البته در لینوکس از این پوسته چندان استفاده نمی شود و در سایر نسخه های یونیکس مانند FreeBSD نیز این پوسته با یک نسخه به نام POSIX جایگزین شده .POSIX از ویرایشگر خط فرمان ، تاریخچه ی خط فرمان (که نه در sh بود نه در سایرCLI ها مانند DOS) و همین طور اسامی مستعار یا aliase ها به طور پیش فرض پشتیبانی می کرد. ۲. C shell یا Csh

این پوسته که اغلب در BSD ها استفاده می شود توسط گروه توسعه دهندگان نرم افزار دانشگاه برکلی که از محدودیت های Bourne shell به ستوه آمده بودند ایجاد شد. دلیل نام گذاری این پوسته به C گرامر یا Syntax این پوسته است که به زبان برنامه نویسی C بسیار شباهت دارد و این موضوع خود باعث دشواری در نوشتن برنامه های پوسته یا Shell Programs می شود .(این برنامه ها درون خود پوسته اجرا می شوند برای اجرا حتمابه پوسته یا شل مخصوص به خود احتیاج دارند در واقع پوسته این برنامه ها را تفسیر می کند.) در این پوسته سیستم کنترل فعالیت هایا Job Controling و تاریخچه ی خط فرمان به صورت پیشرفته و کامل تر وجود دارد . البته در حال حاضر در FreeBSD نسخه های پیشرفته Csh با tcsh جایگزین شده که tcsh را در قسمت های بعد مورد بررسی قرار داده ایم. البته در لینوکس می توان ار هر دوی این پوسته ها استفاده کرد.

۳. Korn shell یا ksh یا pdksh

شرکت AT&T پوسته ی ksh را در سال ۱۹۸۶ منتشر کرد ، این پوسته که توسط دیوید کورن (David Korn)نوشته شد ، پاسخی بود برای انتشار C shell .این پوسته مانند C shell از کنترل فعالیت (Job Controlling) ، تاریخچه ی خط فرمان (Command line History) و اسامی مستعار پشتیبانی می کرد و نسبت به Bourne shell بسیار کاربر پسند تر بود .در این نسخه برنامه نویسی نیز بسیار راحتر شده بود و همین طور ابزار های آن نیز بسیار بیشتر شده بودند.
pdksh نیز یک Korn shell است با این تفاوت که یک نسخه ی Public domain می باشد که از pd ابتدای آن نیز می توان متوجه این موضوع شد.

۴. Bourne Again shell یا bash

بش یا Bourne again shell یک پوسته ی سازگار و شبیه (ونه برپایه ی ) sh یا Bourne shell است که توسط توسعه دهندگان بنیاد نرم افزار آزاد ( FSF ) توسعه داده شد . همان طور که قبلا هم اشاره کردیم bash پوسته ی پیش فرض اغلب لینوکس ها است. این پوسته شبیه به پوسته ی ksh است با ابزار ها و قابلیت های بیشتر . از جمله غابلیت های جدید این پوسته راهنمای درونی یا Built-in Help آن است همین طور ویرایش مستقیم خط فرمان یا Intuitive Command Line Editing و یا ویرایش تاریخچه ی خط فرمان و جستجو با کلید های جهت دار یا Arrow keys و یا متغییر های محیطی ( Environment Variables) بسیار زیاد آن .البته این پوسته در نسخه های تجاری یونیکس موجود نیست و دلیل آن هم مجوز بسیار عالی GNU/GPL است .

۵. tcsh shell

این پوسته یک پوسته ی پیشرفته بر اساس پوسته ی C shell است .کلمه ی t در ابتدای نام آن اول نام سیستم عامل TENEX است که بر روی DEC PDP-10 اجرا می شود. در این پوسته به C shell قابلیت های بیشتری اضافه شده مانند ویرایش تاریخچه به سبک bash و یا پرسش های قبل اعمال تغییرات ماند پرسش قبل از پاک کردن یک شاخه( Folder ).البته همان طور که قبلا اشاره کردم FreeBSD های پیشرفته از این پوسته به عنوان پوسته ی پیش فرض استفاده می کنند.

III.کدام پوسته

همان طور که قبلا اشاره کردیم اغلب لینوکس ها از bash به عنوان پوسته ی پیش فرض استفاده می کنند و البته لینوکس های کم حجم مثلا در حجم یک فلاپی از پوسته های کم حجم تر استفاده می کنند. از آن جایی که کار با bash بسیار آسان است و مانند کار کردن برنامه نویسی برای آن نیز راحت تر است اغلب لینوکس کار ها این پوسته را می پسندند و بنابراین اغلب اسکریپت ها ی موجود در برنامه های نصب مربوط به لینوکس هم از بر اساس این پوسته نوشته می شوند ، بنابر این برای آنکه بتوانید از کار کردن با پوسته ی خط فرمان لذت ببرید و به راحتی از دستوراتی که در سایت ها و مستندات مختلف می بینید استفاده کنید بهتر است از bash استفاده کنید . البته دلیل دیگر برای استفتده از bash همانا مجوز آن یعنی GNU/GPL است کهبرای کاربران لینوکس قوت قلبیست که از پوسته ای که تحت مجوز بنیاد نرم افزار آزاد منتشر شده است استفاده کنند.
البته در نهایت این تصمیم با شماست که از کدام پوسته استفاده کنید و ما فقط یک پیشنهاد به شما دادیم و البته تمام مطالب این سایت بر اساس پوسته ی bash ارائه شده است.
لازم به ذکر است که برای تعویض پوسته در صورتی که پوسته در کامپیوتر شما نصب باشد کافیست نام پوسته را تایپ کنید مثلا برای رفتن به bash از csh کافیست تا در مقابل اعلان فرمان تایپ کنیدbash تا از این پس با پوسته ی bash کار کنید.

درمقالات بعد به نحوه ی کار با پوسته (خط فرمان ) خواهیم پر داخت .

موفق باشید.

امتیاز دهی 1/10
امکانات

اطلاعات

ارتباطات

پروژه‌ها

ورود اعضا




 


 برای ورود مشکل دارید؟
 ثبت نام کاربران جدید


The rest of this site is Copyright © 2004 2005 2006 2007 2008 GNUIran.org
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by Free Software Foundation; A copy of the licence is available at www.gnu.org/copyleft/fdl.html

تمام مطالب این سایت تحت مجوز GNU/FDL نسخه ی ۱.۲ یا هر نسخه ی جدیدی که از سوی بنیاد نرم افزار آزاد منتشر شود قرار دارد شما برای کپی استفاده و/یا تغییر مستندات آزاد هستید.
می توانید یک نسخه از این مجوز را از اینجا تهیه کنید.


GIO Forums RSS   GIO News RSS   GIO Gallery RSS   Licensed under GNU/FDL  Use TW-CMS  Run on Debian GNU/Linux