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