Shell به عنوان یک زبان مترجم خط فرمانی یا Command Line ای شناخته می شود که دستوراتی که شما به سیستم عامل می دهید را به زبان آن ترجمه می کند، در واقع Shell یک برنامه است که رابط بین Kernel و سخت افزار است و همچنین لایه رابط کاربری ما با هسته سیستم عامل نیز محسوب می شود. در سیستم عامل لینوکس انواع و اقسام Shell وجود دارد اما Bourne Again Shell یا BASH یکی از جدیدترین، بروز ترین و پیشرفته ترین Shell هایی است که امروزه استفاده می شود و بصورت پیشفرض در اکثر توزیع های لینوکس وجود دارد، این Shell دستورات بسیار زیاد و متنوعی را درون خودش جای داده است که شما می توانید با استفاده از آنها برنامه های دیگر را براحتی استفاده کنید. BASH به شما کنترل کاملی از سیستم عامل را ارائه می دهد به ویژه اینکه شما می توانید بر روی برنامه هایی که از طریق این Shell اجرا می شوند کنترل کاملی داشته باشید. هر برنامه ای که در BASH اجرا شود به عنوان یک Job شناخته می شود. زمانیکه یک Job اجرا و شروع می شود خود را بر روی یک Terminal قرار می دهد، یک Terminal می تواند یک رابط متنی یا فایل متنی باشد و یا اینکه یک پنجره Teminal که در صفحه X Windows لینوکس باز شده است. به Terminal های متنی در لینوکس به عنوان Straight-Text یا tty و به Terminal هایی که توسط X Windows باز می شوند pseudo-terminal یا pty گفته می شود. در دوره آموزشی Linux Academy The System Administrator's Guide to Bash Scripting به طور تخصصی و حرفه ای با نحوه برنامه نویسی در خط فرمان لینوکس، شل BASH آشنا می شوید.
برای لینوکس shell های مختلفی وجود دارند اما بصورت پیش فرض لینوکس ها از شلی به نام Bash استفاده می کنند. توجه کنید که هرکدام از انواع shell ها در باطن کار مشابهی انجام می دهند اما در ظاهر دستوراتی با شکل استفاده ی متفاوت را به کار می برند. بطور کلی برای اجرا شدن یک دستور در سیستم عامل ها ابتدا باید دستور مورد نظر به زبان صفر و یک تبدیل شود تا برای هسته ی سیستم عامل قابل درک باشد و پس از آن این دستور توسط هسته پردازش و در نهایت اجرا شود. پس بنابراین برای برقراری ارتباط ما با هسته ی سیستم عامل به یک واسط نیاز داریم تا دستوری را که توسط کاربر ایجاد شده است را دریافت و آنرا به زبانی قابل فهم برای هسته ترجمه کند. این واسط همان shell (پوسته) است. به عبارت دقیق تر shell ها برنامه هایی هستند که دستورات متنی (text-based) قابل فهم برای بشر را دریافت و آنها را به زبان کرنل (هسته) ترجمه می کنند تا kernel بتواند آنها را تحلیل و پردازش کند. در دوره آموزشی LiveLessons Bash Scripting (Fundamentals + Advanced) در دو بخش مبانی و پیشرفته با دستورات و نحوه استفاده از آنها در شل لینوکس شامل آشنا می شوید.
Shell به عنوان یک زبان مترجم خط فرمانی یا Command Line ای شناخته می شود که دستوراتی که شما به سیستم عامل می دهید را به زبان آن ترجمه می کند، در واقع Shell یک برنامه است که رابط بین Kernel و سخت افزار است و همچنین لایه رابط کاربری ما با هسته سیستم عامل نیز محسوب می شود. در سیستم عامل لینوکس انواع و اقسام Shell وجود دارد اما Bourne Again Shell یا BASH یکی از جدیدترین، بروز ترین و پیشرفته ترین Shell هایی است که امروزه استفاده می شود و بصورت پیشفرض در اکثر توزیع های لینوکس وجود دارد، این Shell دستورات بسیار زیاد و متنوعی را درون خودش جای داده است که شما می توانید با استفاده از آنها برنامه های دیگر را براحتی استفاده کنید. BASH به شما کنترل کاملی از سیستم عامل را ارائه می دهد به ویژه اینکه شما می توانید بر روی برنامه هایی که از طریق این Shell اجرا می شوند کنترل کاملی داشته باشید. هر برنامه ای که در BASH اجرا شود به عنوان یک Job شناخته می شود. زمانیکه یک Job اجرا و شروع می شود خود را بر روی یک Terminal قرار می دهد، یک Terminal می تواند یک رابط متنی یا فایل متنی باشد و یا اینکه یک پنجره Teminal که در صفحه X Windows لینوکس باز شده است. به Terminal های متنی در لینوکس به عنوان Straight-Text یا tty و به Terminal هایی که توسط X Windows باز می شوند pseudo-terminal یا pty گفته می شود. در دوره آموزشی Udemy BASH Programming Course Master the Linux Command Line به طور تخصصی و حرفه ای با نحوه برنامه نویسی در خط فرمان لینوکس، شل BASH آشنا می شوید.
بَش (Bash) یک پوسته یونیکس آزاد است که نام آن از بَش سرنام Bourne-again shell در انگلیسی است. در ابتدا این پوسته برای سیستمعامل گنو طراحی شدهبود. اما بش در اکثر سیستمعاملهای خانواده شبه-یونیکس قابل اجراست. پوستهٔ پیشفرض در اکثر سیستمعاملهایی که از هسته لینوکس استفاده میکند، است. همچنین پوستهٔ پیشفرض سیستمعامل مک اواس ده که مبتنی بر داروین است نیز است. این پوسته برای سیستمعامل مایکروسافت ویندوز به وسیلهٔ شبیهساز پوزیکس به نام سیگوین انتقال داده شدهاست. اکثر قریب به اتفاق اسکریپتهای نوشته شده برای Bourne shell بدون تغییر در Bash نیز قابل اجرا هستند. همچنین در شکل دستورهای (Command Syntax) بش، از Korn shell و C shell نیز الهام گرفته شده است. این زبان که مستقیما با خط فرمان گنو/لینوکس درگیر می شود، اجازه می دهد تا برنامه های منعطف، کارآمد و در عین حال ساده و سبک ایجاد کرد. در دوره آموزشی Up and Running with Bash Scripting شما با اسکریپت نویسی بَش آشنا می شوید.