یک سوال خارج از موضوع تاپیک: وضیعت bash (یا zsh ،chsh و...) نسبت به یک زبان برنامه نویسی چیه؟ بش هم زبانه؟ شل چه طور؟ اصولاً اینقدر قدرتمند و انعطاف پذیر هستند که بشه با هاشون برنامه نویسی کرد؟
بش و شل نسبت به لینوکس همون حالی رو دارند که داس نسبت به ویندوز داره؟
بش با شل، تفاوتشون از نظر تعریف در چیه؟
من که خوب مشخصا نسبت به اساتید چیزی حالیم نیست!! حالا اون چیزی که فکر میکنم درسته رو میگم،دوستان جواب میدن منم خودم رو اصلاح کنم ببینم چقد میتونم درست بگم!!اینایی که میگم،همه از اونجایی میاد که دو هفته ی پیش،ارائه مطلب داشتم در مورد شل،و یه سری چیزا رو از ویکی یا داکیومنت های دیگه دوبله کردم به فارسی!!:
فک کنم بش از همه ی شل ها کامل تر و یا حداقل معروف تره و بیشتر استفاده میشه!!(ویکی پدیا!)
ظاهرا،با داشتن کاربری ادمین یا روت،و با در دست داشتن شل،میشه هر کاری که دلت میخواد بکنی!!!(برای مثال،فایل گراب که برا بوت هست،رو در حالت عادی نمیشه ادیت کرد،ولی با 2 خط کد زدن توی شل یا همون ترمینال خودمون،وضعیتش عادی میشه و مثل بقیه ی فایل ها میشه ادیتش کرد!! من با این تکنیک،ترتیب بوت 25 تا سیستم سایت دانشگاه رو اصلاح کردم و ویندوز رو بردم بالا تر از لینوکس!!).....اما در مورد اینکه بشه باهاشون برنامه نویسی کرد؟ راستش فک نکنم.....یعنی خوب میشه براشون اسکریپت نوشت،و اینا هم اجرا میکنن بدون هیچ حرف اضافه ای!!!
کد های نوشته شده رو هم میشه توی یه فایل sh. ذخیره کرد و توی شل(بش،ترمینال یا شل مجازی، یا هرکدوم دیگه!) اجراش کرد و اون خودکار کل اون کارها رو انجام میده!!
مثلا تو همون کار سیستم ها که گرابشون رو تصحیح کردیم،استادم بهم کمک کرد که فایل sh. رو درست کنم،بعدش هم دیگه فقط رو سیستم ها کاربر رو روت میکردیم و کد ها فایل رو اجرا میکردیم،فایل cfg گراب رو پیست میکردیم و تموم!!! کاری که برا هر سیستم تقریبا 10 مین وقت میگرفت،شد 30 ثانیه برا هر سیستم...پ
تفاوت تعریف هم فکر کنم که شل رابط اصلی ارتباط با کرنل هستش...حالا ما انواع شل داریم،یکیش بش...و غیره....همه یه نوع شل هستن که معروف ترینش همون شل خودمون هست!
داکیومنت انگلیسی شل در ویکی پدیا،کل این مسایل رو توضیح داده...