فرض کنید شمابه یک پمپ بنزین مراجعه میکنید و متصدی پمپ بنزین نیست و کسی هم نیست که به شما سرویس بده پس نمیتونید بنزین بزنید در حالی که چاه های اونجا بنزین دارند وقتی که متصدی پمپ بنزین بیاد میتونید از امکانات پمپ بنزین استفاده بکنید یا مثلا شما میرید رستوران یک گارسنی هست که سفارش ها رو از شما میگیره و وقتی غذا آماده شده به شما تحویل میده اگر اون کارسون نباشه هر چقدر هم که اون رستوران مجهز باشه شما نیمتونی از امکاناتش استفاده بکنید کار شل هم دقیقا همین هست برای شما یک شرایطی رو به وجود میاره که شما بتونید از امکانات سیستم عامل استفاده کنید
شل معمولا ۲ حالت داره یا گرافیکیست یا خط فرمانی مدل گرافیکی اش مثل گنوم شل و حالت خط فرمانی اش مثل بش هست در حالتهای خط فرمانی حالت های دیگه ای هم وجود دارد مثل زی شل که جدیدتر از بش هستش و ضمنا تفاوتهایی هم با هم دارند.
برای این منظور ترمینال رو باز کنید و دستور زیر را در آن وارد بکنید
echo $0
خروجی دستور بالا
$ echo $0 bash
برای این منظور از دستور cat برای نمایش محتویات فایل زیر استفاده میکنیم دستور زیر را در ترمینال بزنید
cat /etc/shells
خروجی دستور بالا
cat /etc/shells /bin/sh /bin/bash /usr/bin/sh /usr/bin/bash /usr/bin/tmux /bin/tmux
اینها شباهت هاشون بیشتر از تفاوت هاش هست یک وقتایی اگر کاربر در اسکریپت نویسی توجه نکند با خطاهای عجیب و غریبی روبرو میشه که در آموزشهای بعدی به طور کامل این موارد رو بررسی میکنیم و اگر تمایل دارید مثلا zsh را نصب کنید با دستور زیر میتوانید پوسته زی شل را نصب کنید
sudo dnf install zsh
شما۲ تا ترمنیال باز کنید در یکی از zsh و در دیگری از بش و در هر دو پوسته دستور ls را با حرف p اجرا بکنید اتفاقی که می افته در بش یک لیست از فایلهایی که با حرف p هستند را برای شما نمایش میده مثل زیر
[phoenix@nobody ~]$ ls l Pictures Public
در zsh هم به همین شکل تنها فرق اینه که در zsh شما میتونید با کلیدهای بالا و پایین صفحه کلید روی فایلها جابه جا بشید امتحان بکنید متوجه منظورم میشید این یکی از فرقهای ساده بین این دو پوسته است.