ابزار کاربر

ابزار سایت


tutorials:kernel-shell:shell-scripting-tutorial:shell-scripting-tutorial-1

لینک ویدیو این آموزش

آموزش Bash قسمت اول در این قسمت با مفاهیم مقدماتی مثل shell , sh , zsh , bash آشنا میشید

پوسته یا شل چیست؟

فرض کنید شمابه یک پمپ بنزین مراجعه میکنید و متصدی پمپ بنزین نیست و کسی هم نیست که به شما سرویس بده پس نمیتونید بنزین بزنید در حالی که چاه های اونجا بنزین دارند وقتی که متصدی پمپ بنزین بیاد میتونید از امکانات پمپ بنزین استفاده بکنید یا مثلا شما میرید رستوران یک گارسنی هست که سفارش ها رو از شما میگیره و وقتی غذا آماده شده به شما تحویل میده اگر اون کارسون نباشه هر چقدر هم که اون رستوران مجهز باشه شما نیمتونی از امکاناتش استفاده بکنید کار شل هم دقیقا همین هست برای شما یک شرایطی رو به وجود میاره که شما بتونید از امکانات سیستم عامل استفاده کنید

انواع شل

شل معمولا ۲ حالت داره یا گرافیکیست یا خط فرمانی مدل گرافیکی اش مثل گنوم شل و حالت خط فرمانی اش مثل بش هست در حالتهای خط فرمانی حالت های دیگه ای هم وجود دارد مثل زی شل که جدیدتر از بش هستش و ضمنا تفاوتهایی هم با هم دارند.

تشخیص پوسته شل

برای این منظور ترمینال رو باز کنید و دستور زیر را در آن وارد بکنید

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

تفاوت پوست هایی bash و zsh

اینها شباهت هاشون بیشتر از تفاوت هاش هست یک وقتایی اگر کاربر در اسکریپت نویسی توجه نکند با خطاهای عجیب و غریبی روبرو میشه که در آموزشهای بعدی به طور کامل این موارد رو بررسی میکنیم و اگر تمایل دارید مثلا zsh را نصب کنید با دستور زیر میتوانید پوسته زی شل را نصب کنید

sudo dnf install zsh

شما۲ تا ترمنیال باز کنید در یکی از zsh و در دیگری از بش و در هر دو پوسته دستور ls را با حرف p اجرا بکنید اتفاقی که می افته در بش یک لیست از فایلهایی که با حرف p هستند را برای شما نمایش میده مثل زیر

[phoenix@nobody ~]$ ls l
Pictures  Public

در zsh هم به همین شکل تنها فرق اینه که در zsh شما میتونید با کلیدهای بالا و پایین صفحه کلید روی فایلها جابه جا بشید امتحان بکنید متوجه منظورم میشید این یکی از فرقهای ساده بین این دو پوسته است.

tutorials/kernel-shell/shell-scripting-tutorial/shell-scripting-tutorial-1.txt · آخرین ویرایش: 2019/04/19 10:22 توسط phoenix