از Pista Academy حمایت کنید
خلاصه آموزشی
مرور سریع مفاهیم اصلی پیش از تماشای کامل یا برای جمعبندی بعد از آموزش.
در جلسه 11 آموزش متخصص مهندسی داده و بیگ دیتا، مدرس به بررسی مفاهیم ترمینال، شل و اسکریپتینگ در سیستم عامل لینوکس میپردازد. ابتدا توضیح میدهد که این سه مفهوم چگونه با یکدیگر تفاوت دارند و نقش خاصی در ارتباط کاربر با سیستم عامل دارند. سپس به اهمیت اتوماسیون و استفاده از اسکریپتها برای انجام کارهای روتین در لینوکس اشاره میکند. در ادامه، نحوه اجرای فایلها در سرور و تفاوت اجرای مستقیم فایل با استفاده از دستورات یکی یکی بررسی میشود. در پایان، یک تمرین عملی ارائه میشود که فرضیهای ارائه میدهد که مدیر سیستم میتواند اسکریپتی بنویسد و فایل را اجرا کند.
نکات کلیدی
ترمینال، شل و اسکریپتینگ سه مفهوم متفاوت در لینوکس هستند که هر کدام نقش خاصی در ارتباط کاربر با سیستم عامل دارند.
اسکریپتینگ به عنوان ابزاری قدرتمند برای خودکارسازی کارهای روتین در لینوکس معرفی میشود.
اجرای مستقیم فایلها در سرور به جای استفاده از دستورات یکی یکی میتواند به بهبود کارایی و سرعت کمک کند.
تمرین عملی ارائه شده نشان میدهد که مدیر سیستم میتواند اسکریپتی بنویسد و فایل را اجرا کند.
پرسشهای رایج
پاسخ کوتاه و مستقیم به پرسشهایی که معمولاً هنگام یادگیری این موضوع مطرح میشوند.
اسکریپتینگ در لینوکس به عنوان ابزاری برای خودکارسازی کارهای روتین استفاده میشود که به کاربر امکان میدهد فرآیندهای مختلف را به صورت خودکار انجام دهد.
فایلها در سرور میتوانند به صورت مستقیم اجرا شوند یا با استفاده از دستورات یکی یکی اجرا شوند. اجرای مستقیم معمولاً سریعتر و کارآمدتر است.
ترمینال واسطی برای ارتباط کاربر با سیستم عامل است، شل ابزاری برای اجرای دستورات است و اسکریپتینگ به کاربر امکان میدهد فرآیندها را به صورت خودکار انجام دهد.
آخرین بهروزرسانی محتوای متنی:
🎓 دوره جامع «متخصص مهندسی داده و بیگ دیتا» | Pista Academy در دنیای امروز، حجم عظیمی از دادهها هر روز توسط سازمانها، کسبوکارها و سرویسهای آنلاین تولید میشود؛ اما داده زمانی ارزشمند است که بتوانیم آن را بهدرستی جمعآوری، ذخیره، پردازش و مدیریت کنیم. در دوره «متخصص مهندسی داده و بیگ دیتا» در Pista Academy، قدمبهقدم با مفاهیم، ابزارها و تکنولوژیهای مهم حوزه Data Engineering و Big Data آشنا میشویم و تلاش میکنیم مسیر یادگیری را از مفاهیم پایه تا ابزارهای حرفهای این حوزه طی کنیم. 📚 در این دوره با موضوعاتی مانند موارد زیر آشنا خواهید شد: 🔹 Linux Server و ابزارهای موردنیاز مهندسی داده 🔹 Python و Java برای کار با ابزارهای Data Engineering 🔹 مفاهیم دادههای توزیعشده و پایگاه داده 🔹 پایگاه دادههای رابطهای و SQL 🔹 پایگاه دادههای NoSQL 🔹 مفاهیم Big Data 🔹 اکوسیستم Hadoop 🔹 کار با ابزارهای Hadoop و مثالهای کاربردی 🔹 Apache Spark و پردازش دادههای حجیم 🔹 کار عملی با ابزارهای Spark 🔹 Kubernetes 🔹 خودکارسازی و مدیریت فرایندهای انتشار در مهندسی داده 🎯 این دوره برای چه کسانی مناسب است؟ اگر قصد دارید وارد حوزه مهندسی داده شوید، دانش خود را در زمینه Big Data گسترش دهید یا با ابزارهایی مانند Hadoop، Spark، SQL، NoSQL و Kubernetes بهصورت جدیتر آشنا شوید، این دوره میتواند مسیر مناسبی برای شروع و توسعه مهارتهای شما باشد. در طول دوره تلاش میکنیم مفاهیم را به زبان ساده و کاربردی بررسی کنیم و در کنار مباحث تئوری، با ابزارها و سناریوهای واقعی نیز آشنا شویم. ━━━━━━━━━━━━━━━━━━ 📌 نام دوره: متخصص مهندسی داده و بیگ دیتا 🏫 Pista Academy آموزش تخصصی، ساده و کاربردی اگر این آموزش برای شما مفید بود، با 👍 لایک کردن ویدیو و Subscribe کردن کانال Pista Academy از ادامه تولید آموزشهای تخصصی حمایت کنید. همچنین اگر درباره مباحث دوره سؤال یا پیشنهادی دارید، در بخش نظرات مطرح کنید. 👇 #مهندسی_داده #بیگ_دیتا #DataEngineering #BigData #Python #SQL #NoSQL #Hadoop #Spark #Kubernetes #PistaAcademy
جدیدی لازم باشه توی حالا کار یاد
میگیریم. نگران نباشید جلوتر که بریم.
مبحث بعدی که میخوایم راجع بهش صحبت کنیم
بحث شل اسکریپتینگه.
من از خودشی خواستم که یه در حقیقت
آموزش کامل یه با همه سرفصلاشو اینجا برای
ما بذاره که خیلی درگیر باز نوشتن و این
چیزا نشه. خب بریم سراغ فاز اول آموزش شل
اسکریپتینگ
و بحث بش فاندامنتاله یعنی مباحث پایه
بشه.
تو این فاز هدفمونه که بچهها ساختار شل
اسکریپت رو کامل بفهمیم و بتونیم
اسکریپتهای ساده بنویسیم و اجرا بکنیم و
اینم سرفصلایی که قراره راجع بهش صحبت
بکنیم
حالا اینکه اصلاً خود شل اسکیپینگ چی و
اینا بچهها می الان جلوتر بیرم کامل
متوجه میشید چیه و براتون جا میفته مط
این ماژول یکه این ماژول دهه ماژول سه و نمیخوام الان همه رو دونه دونه معرفی کنم
برسیم بهش راجع بهش صحبت میکنیم. این فاز
دوم
فاز چهارم و فاز پنجم. فاز ششمم داره فاز هفتم و الی
آخر این آموزش کاملش اسکریپتینگه.
اینم پروژههایی که قراره در طول این دوره ما انجام بدیم. خب
بریم شروع کنیم. میگه بریز شروع دوره که
شروع کنیم. چشم. اینم شروع دوره.
خب من ویدیو رو فعلاً پاز میکنم تا این کامل
بیاد.
خب بریم سراغ موضوع اول. ما ۳ تا اصطلاح
داریم ترمینال شل و بش احتمالاً شنیده
باشید خب
این سه تا بچهها لزوماً یه چیز نیستنا
اینا س تا چیز مختلفن س تا نقش مختلف هستن
خب
بیایم پایینتر ببینیم چیه
فرض کنید یه همچین دستوری رو بچهها ما اجرا بکنیم بیایم اینجا اجرا کنیم خروجیش
چیه دی اف دش اچ
خب یه همچین خروجی رو بهمون میده وضعیت
دیسکهای این سروری که روشیمو داره نشون
میده خب خروجیش میگه چیز شبیه اینه بله
دقیقاً خب
این دستور میگه کجا تایپ شده تو محیطی به
نام ترمینال
خب
اما ترمینال بچهها خودش دستور دیفو اجرا نمیکنه شما دارید تو ترمینال دستورو
مینویسید اما خود ترمینال اجا نمیکنه.
خب دستور شما به برنامهای به نام شل داده
میشه
و در حقیقت اون شله که داره دستور شما رو
اجرا میکنه و تحلیل میکنه
و یکی از معروفترین شلهای لینوکس بشه.
شلهای دیگه هم ما داریم.
پس این میشه تفاوت بین این سه تا اصطلاح.
حالا شیل اسکریپتین چی میشه؟ خب
میگه که یه سری مجموعهای از دستورها و
منطقها رو
در اختیار
شل قرار میدیم که به صورت خودکار در
لینوکس اجرا بکنه حالا این وقت انگلیسی
فارسیش چپ و راست شده یه ذره سخته خوندنش
حالا دفعه بعدی میگم که اینو یه ذره درست
بذارم خب
بریم جلوتر داره. چرا این کارو میکنیم؟ بچهها؟ یه کلمه
اینجا گفته به نام اتومیشن.
بحث خودکارسازی فراآیندهاست. یعنی شما
مثلاً یه سری کارا روتین هر روز انجام
میدید نیاید هر دفعه کامنداشو بنویسید.
این مجموعه کامندایی که هر روز انجام
میدید رو یه جا ذخیره میکنید در قالب یک
فایل شر اونو اجرا میکنید. حتی نیاز نیست
دستی هم اجراش کنید. میتونید بگید هر روز
هر یک ساعتی اجرا بشه.
[صدای خرناس]
پس این محیطی که باهاش دارید با سیستم
عامل ارتباط برقراریدو به اسمش میگن
ترمینال
اون چیزی که اون پشت داره دستوراتو تو
مورد ترمینال اجرا میکنه بهش میگن شل و
یکی از شلا معروف بشه
خب وظیفه ترمینال چیه دست شماو دریافت کنه
اون رو به شل بده و خروجی شل رو هم نمایش
بده پس ترمیناال یه رابط کاربریه
خب [صدای خرناس] شعر چیه؟ ش یک مفسر دستوره یعنی در
کامندایی که شما اینجا مینویسید رو تفسیر
میکنه
من این دستورو وقتی مینویسم اینو میدم به ترمینال ترمینال میده به شل شل این
دستوررو میاره اجرا میکنه بچهها هر
دستور در لینوکس یک فایله که اجرا میشه خب
و در نهایت خروجیشو دوباره میاره میده به
ترمینال که به ما نمایش بده
به زبان ساده شل شل واسطه بین دستورات
کاربر و سیستم عامله
بچهها میگه شل فقط کامند اینجرو نمیکنه خب
امکان برنامه نویسی هم داره مثلاً شما
میتونید وریبل داخلش تعریف بکنید کاندیشن
بذارید لوپ بذارید حالا اینا جلوتر
میبینیم ما فانکشن تعریف کنید داخل شل پس
صرفاً این نیست که کامند اجرا کنه
بخش یه مدل شله خب
مثلاً بش یکی از رایجترین شلهای موجود توی لینوکسه که خیلیا باهاش کار میکنن
ولی خب شلهای دیگه هم ما داریم
آیا بش همون شله یا شل همون بشه؟ نه خب شل بچهها یک مفهوم کلیه
اما بش یکی از پیازیسازیهای شله مثلاً ما میگیم یه بروزر داریم مثلاً یه
بروزره فایرافاکس یه بروزره اج یه بروزره
سافاری یه بروزره بشم همینجوریه بش یکی از
شلاست و شلا دیگه هم داریم
اینا بشو داریم زدs اچو داریم فیشو داریم دشو داریم کیs اس اچو داریم اینا شلهای
مختلف شما میتونید روی لینوچتون نصب
بکنید و ازشون استفاده کنید اگه براش حال
نمیکنید به هر دلیلی
توافق ترمینال شلو داره میگه وقتی شما یک دستوری رو مینویسید ترمینال دستور شما رو
دریافت میکنه شل اونو تفسیر و اجرا
میکنه خروجی رو میده به ترمینال که نمایش
بده
باز اینجا معلولشو داره توضیح میده جالو بگذاریم از این
خب اما شل اسکریپتینگ بچهها میگه از کجا
میاد وارد داستان ما میشه فرض کنید بچهها
شما هر روز باید یه سری دستوررو اجرا کنید
مثلاً دستور دیتو باید اجرا کنید بعد
هاستمو اجرا کنید بعد آف تایمو اجرا کنید
بعد فری دش اچو اجرا کنید و بعد دیفش اچ
فرض کن این ۱ ۲ ۳ ۴ ۵ تا دستورو هر روز
صبح که میاید پشت سرورتون میشید باید اجرا
کنید خب خب یا اینه که اینا رو دسته اجرا
کنید هیچ مشکلی هم نداره اما میتونید
بیاید همه اینا رو بذارید تو یه فایل اون
فایله رو اجرا بکنید خب
دقیقاً اینجا نقطه شروعش اسکریپتینگه
خب حتی میتونید بچهها یه سری برنامه توش
بنویسید مثلاً بگید اگر حجم فلان دیسک از
۸۰ بیشتر شد مثلاً فلان کارو بکن اگه کمتر
بود فلان کارو بکن خب اینجاست که دق شیر
اسکریپتینگ
یه ابزار خیلی قدرتمند برای کسایی که
کارای ادمینی انجام میدن
ما میایم داخل یک فایل شر بچهها دستوراتمونو اینجوری مینویسیم پشت هم به
این صورت و بعد اون فایله رو اجرا بکنیم
تمام دستورات داخلش اجرا میشه. حالا الان
میریم یه مثالشو با هم میزنیم الان.
بیایم پایینتر ببینیم چی داره. خب بریم یه دونه
دست فایل شل بنویسیم. خب حالا فرض حالا من
قبل اینکه بخوام تو سرور بنویسم بذار مثال
خودشو ببینیم. الان یه فایل شله بچهها یه
فایل شل سه تا دستور داخلش هست. یه دونه
اکو داره یه دونه دیت داره یه هومایی داره
وقتی اینو اجرا بکنید اول دستور اول اجرا
میکنه بعد میا دومی و بعد میاد سومی
الان میریم فایلا رو میسازیم با هم
میبینیم جلوتر بریم
خب بیایم اصلاً این فایلا رو بسازیم با هم خروجیشو ببینیم
من سی دی بکنم تو اسلش سی دی بکنم اسلش خب اسلش ۲۰ تا خب
بیایم اینجا ویمو باز میکنم یه فایلی
درست میکنم به نام مثلاً
تست.s
اس اچ
اس اچ یعنی فایل شل دارم درست میکنم. خب
میرم تو اینسرت م آیو میزنم مینویسم اکو
خط اول
هلو لینوکس مثلاً همون هلو ورد معروفه مثلاً بعد دستور
دیتور
هومای
از این سورد خارج میشم با اکسیت دو نقطه دبلیو کیو این الان سیو شد حالا میخوام
اینو اجرا کنم مینویسم نقطه اس.
اچ اون س۳ تا دستور پشت هم اجرا میشه آها
پرمیشن دینا داد یعنی چی؟ بریم با هم
ببینیم.
این چرا نمیزدم [صدای خرناس]
خش اشکال نداره خب این تستمونه نگاه کنید
بچهها چرا فایل اجرا نشده به نظرتون
نکتهش چیه
اصلاً دسترسی من اگزکیوت ندارم رو این
چهجوری دست اگزیکیوت بهش اضافه بکنم با سی
اچ مود سی اچ مود پلاس ایک تست.s اس اچ
الان اینو بزنم نگاه کنید دسترسی
اگزکیوتمم گرفتم رو اون فایله حالا
میتونم اونو اجراش کنم
اون سه تا دستوری که پشت هم نوشته بودمو بهم نشون داد
اول اون اکو اجرا کرد بعد دیتو اجرا کرد بعد روتو اجرا کرد
اوکی
پس من یه فایلی نوشتم فایل ش دستوراتم
داخلش میذارم دارم اجراش میکنم.
یه مثال دیگه هم داره خودش میزنه. بریم
مثالاً با هم ببینیم.
خب اول هاست نمیمو اجرا میکنه بعدمای
[گلویش را صاف میکند]
آپتایم فیل دش اچ دیف دش اچ
مثلاً اینو نگاه کنید. بیایم همینو با هم بنویسیم بچهها. خب برای اینکه حالا یه
ذره سریعتر بریم جلو تو ویم کار نکنیم
میتونیم تو وی اس کد بنویسیم کدمونو با
در حقیقت اف تی پی منتقل بکنیم این کارم
میتونید بکنید بچهها خب
بیایم
همینجا با ویم مینویسیم بره ولش کن ویم
تست. اس اچ خب میرم تو اینسرت مود دوباره
بعد میام اینا رو پاک میکنم خب
میگم که اکو
دو نقطه اینا
مثلاً سرور
اینفورمیشن
کارنت یوزر
دستور هوی بعد دوباره یه اکو
فیلدش اچ دستور عشق بعد یه اکو دیگه
وضعیت دیسکامو نشون بده دیفش اچ خب اینو
ذخیرهش میکنم حالا اجراش کنیم دوباره
خروجی رو نگاه کنید
اول اومد چیو نشون داد سرور اینفورمیشن
اسم سرورمه بعد کانفیوزر روته آپتایمم من
د روزه
نه ۱۱ روز آپتایممه ۱۱ روز ۸ دقیقه و فلان
مموری وضعیتش وضعیت دیسکم تمام اطلاعاتو
بهم اجرا کرد نمایش داد ولی لازم نبود
تمام این کامندا رو دونه دونه اجرا بکنم
خب فایلا رو اجرا میکردم همه رو خودش
اجرا میکرد
خب این چیه؟
همون کارا رو که کردیم. آها بچهها ابتداش
میتونید شما بشو مشخص بکنید.
یعنی میتونید اینجا مشخص بکنید ابتداش حتی
دیگه چی؟
اینم که گفتیم اینم اون چیزی بود که بهتون نشون دادم
اگه بخواید این کارو نکنید میگه باید با
دستور بش اجراش بکنید اگه نخواید این کارو
بکنید ولی خب ما اومدیم مستقیماً دسترسی
اگزیکیوترو روش فعال کردیم و خودمون اجرا
کردیم مستقیماً فایله رو اما تفاوت این د
تا چیه یا این میگه این سه تا تفاوتشون با
هم چیه؟ چیه؟
خب جلوتر درس بعدی میگه من فکر کردم همین جا میخواد بگه. اوکی [صدای خرناس] خب
اینو که دیدیم با همدیگه بیایم پایینتر.
خب اینو که صحبت کردیم
و اینا رو بگذریم میخوام ببینم چیزی مونده یا نه.
اینم یه تمرین اگه دوست داشتید اجرا کنید میگه شما به عنوان مدیر سیستم هستید فرض
کنید خب و میگه که هر دفعه میگه که وقتی
اس اسش زدید وارد سرور شدید مثلاً این
اطلاعاتو من نیاز دارم میاید یه اسکریپت
کوچیک مینویسید اون فایله رو منتقل
میکنید به اون سروره یا همون جا میرین
فایل رو درست میکنید و اجرا میکنید.
دفعات بعدی هم که بخواید بیاید رو اون
سروره دیگه نیست اینا رو همه رو بنویسید.
میرید اون فایله رو اجرا میکنید.
خب و تمام برای این جلسه فکر کنم کافی باشه. بریم رویش جلسه بعدی صحبت کنیم.
فعلاً خداحافظ. ‏Yeah.