آموزش ترمینال از صفر: دستورات اصلی ترمینال ویندوز برای وایب‌کدینگ

۱۳ آبان ۱۴۰۵ · ۱۲:۲۰ دقیقه

فصل‌های ویدیو

درباره‌ی این ویدیو

یه پنجرهٔ سیاه... ولی Claude Code و Codex توش کار می‌کنن، و ایجنت Antigravity هم دستورهاش رو همین‌جا اجرا می‌کنه.بدون اینکه برنامه‌نویس باشین، ترمینال رو مثل یه حرفه‌ای باز می‌کنین و سه تا دستوری رو یاد می‌گیرین که هیچ‌وقت نباید چشم‌بسته اجراشون کنین.

توی این ویدیو با همدیگه می‌بینیم ترمینال (Terminal) چیه، چه فرقی با شل (shell) و کنسول داره، و روی Windows (ترمینال ویندوز، PowerShell و cmd)، Mac (zsh) و Linux (bash) با کدوم سروکار دارین. ترمینال رو روی ویندوز و مک و توی VS Code باز می‌کنیم و می‌بینیم پرامپت ترمینال چی نشون می‌ده. دستورات اصلی ترمینال رو یاد می‌گیریم: pwd، ls، cd، mkdir، cp، mv، cat و rm، فرق مسیر نسبی و مسیر کامل، و دو تا ترفند سرعت، کلید Tab و فلش بالا. بعد اجرای برنامه‌ها و نصب ابزار با مدیرهای بسته مثل npm، pip، winget و Homebrew؛ اینکه چرا ترمینال می‌گه command not found و PATH و متغیرهای محیطی چی هستن؛ localhost و پورت، و متوقف کردن یه سرور با Ctrl+C؛ و اینکه خطاها رو چطوری بخونیم. آخرش هم سه دستور خطرناک ترمینال رو می‌گم، و اینکه ایجنت‌هایی مثل Claude Code، Codex و Antigravity توی ترمینال چیکار می‌کنن و قبل از تأیید دستورشون باید چی رو بدونین.

این ویدیو از سری «آموزش‌های پایه برای وایب‌کدینگ» هستش؛ قسمت قبلی دربارهٔ گیت و گیت هاب بود.

قسمت قبلی، گیت و گیت هاب: https://youtu.be/dpTdYVmfpIMپلی‌لیست آموزش‌های پایه برای وایب‌کدینگ: https://www.youtube.com/playlist?list=PLSLBX8B5NOcI

سؤالی دارین؟ همین الان توی کامنت‌ها بپرسین؛ خودم جواب می‌دم.اگه این ویدیو به کارتون اومد لایک کنین، کانال رو سابسکرایب کنین و برای دوستاتون هم بفرستین که اونا هم یاد بگیرن.

Mr MP | هوش مصنوعی و کسب‌وکارhttps://mrmp.pro

اعتبار تصویرها و لوگوها:Git Logo by Jason Long, licensed under CC BY 3.0 (https://creativecommons.org/licenses/by/3.0/), from git-scm.com/community/logosTux by Larry Ewing ([email protected]) and The GIMP; vector by Simon Budig and Garrett LeSage, via Wikimedia Commons (https://commons.wikimedia.org/wiki/File:Tux.svg)Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.Git and the Git logo are trademarks of Software Freedom Conservancy, Inc."Python" and the Python logos are trademarks or registered trademarks of the Python Software Foundation.npm is a registered trademark of npm, Inc.Windows, PowerShell, Windows Terminal, Visual Studio Code, GitHub, Mac, Claude Code, Codex, Google Antigravity, Node.js and Homebrew are trademarks of their owners, shown only to name their products.

#ترمینال #وایب_کدینگ #ClaudeCode

متن کامل ویدیو

نمایش

یه پنجرهٔ سیاه، یه نشانگر که چشمک می‌زنه… و چند تا خط که به نظر هیچی ازش نمی‌فهمیم. ولی همین پنجره، جاییه که کلاد کد (Claude Code) و کدکس (Codex) توش کار می‌کنن، و ایجنت (Agent) آنتی‌گرویتی (Antigravity: ابزار گوگل) هم دستورهاش رو همین‌جا اجرا می‌کنه. و کسی که بلدش نباشه، نصف قدرت ایجنت‌ها رو از دست می‌ده. تا آخر همین ویدیو بهتون قول می‌دم: بدون اینکه برنامه‌نویس باشین، ترمینال (Terminal: جای تایپ دستور) رو مثل یه حرفه‌ای باز می‌کنین، می‌فهمین هر دستور دقیقاً چیکار می‌کنه، و سه تا دستوری رو یاد می‌گیرین که هیچ‌وقت نباید چشم‌بسته اجراشون کنین. بزن بریم!

شاید فکر کنین ترمینال فقط مال برنامه‌نویس‌های حرفه‌ایه. ولی اصلاً این‌طور نیست. ترمینال یکی از ساده‌ترین و در عین حال قدرتمندترین ابزارهاییه که می‌تونین یاد بگیرین. و اگه می‌خواین با کلاد کد، کدکس یا آنتی‌گرویتی کار کنین، دیگه یه انتخاب نیست؛ ضروریه، چون این ایجنت‌ها کارهاشون رو دقیقاً توی همین پنجره انجام می‌دن. توی این ویدیو یاد می‌گیریم ترمینال دقیقاً چیه، فرقش با shell چیه، چطوری توش جابه‌جا بشیم، فایل بسازیم و برنامه اجرا کنیم، چرا گاهی می‌گه «command not found»، چطوری یه برنامه رو متوقف کنیم، و از همه مهم‌تر، چه دستورهایی خطرناکن و هیچ‌وقت نباید چشم‌بسته اجراشون کنین.

بیشتر وقت‌ها ما با کامپیوتر از طریق «رابط گرافیکی» کار می‌کنیم: پوشه باز می‌کنیم، کلیک می‌کنیم، فایل رو می‌کشیم و می‌ندازیم. ترمینال همون کارها رو انجام می‌ده، فقط با نوشتن به جای کلیک. شما یه دستور می‌نویسین، Enter می‌زنین، کامپیوتر انجامش می‌ده، و نتیجه رو به صورت متن نشونتون می‌ده. همین. حالا چرا کسی باید به جای کلیک، تایپ کنه؟ سه تا دلیل. اول، سرعت: کاری که با ده تا کلیک انجام می‌شه، با یه خط تموم می‌شه. دوم، تکرارپذیری: یه دستور رو می‌شه ذخیره کرد و هزار بار اجرا کرد، دقیقاً یکسان.

و سوم، و مهم‌تر از همه: بیشتر ابزارهای برنامه‌نویسی اصلاً رابط گرافیکی ندارن. فقط از ترمینال در دسترسن. این سه تا کلمه، ترمینال، shell و کنسول، زیاد جای هم استفاده می‌شن، ولی یه فرق ریز دارن که دونستنش خیلی چیزها رو روشن می‌کنه. ترمینال، اون پنجره‌ایه که می‌بینین؛ جایی که تایپ می‌کنین و جواب رو می‌خونین. shell، برنامه‌ایه که داخل اون پنجره اجرا می‌شه و دستورهای شما رو می‌فهمه و انجام می‌ده. یعنی ترمینال صفحه‌ست، shell مغزش. shell‌های معروف چند تان. روی Windows، پاورشل (PowerShell) و سی‌ام‌دی (CMD).

روی Mac، zsh. و روی Linux، معمولاً bash. این مهمه، چون دستورها توی shell‌های مختلف یه کم فرق دارن. توی این ویدیو هر جا فرق مهمی باشه، هر دو حالت رو می‌گم. روی Windows، دنبال Windows Terminal یا پاورشل بگردین. روی Mac، برنامهٔ ترمینال. و یه راه خیلی راحت‌تر هم هست: خود VS Code یه ترمینال داخلی داره، که دقیقاً توی پوشهٔ پروژه‌تون باز می‌شه. برای شروع، همین بهترین گزینه‌ست. وقتی بازش می‌کنین، یه خط می‌بینین که معمولاً اسم کاربر، اسم کامپیوتر، و یه مسیر توشه، و آخرش یه علامت مثل دلار یا بزرگ‌تر.

به این خط می‌گن prompt، یعنی ترمینال آماده‌ست که دستور بگیره. و اون مسیر خیلی مهمه: نشون می‌ده الان کجای کامپیوترتون هستین. اولین چیزی که باید یاد بگیرین، اینه که بدونین کجایین و چطوری جابه‌جا بشین. با pwd می‌بینین الان دقیقاً توی کدوم پوشه‌این. با ls فهرست فایل‌ها و پوشه‌های همین‌جا رو می‌بینین؛ توی سی‌ام‌دی ویندوز، به جاش dir. و با cd می‌رین داخل یه پوشه. مثلاً cd Documents. دو تا نکتهٔ مهم. cd ..، یعنی یه پوشه برگرد بالا. و علامت مد، یعنی پوشهٔ اصلی کاربر خودتون.

حالا یه مفهوم کلیدی: مسیر نسبی و مسیر کامل. مسیر کامل از ریشهٔ کامپیوتر شروع می‌شه، مثلاً C:، Users، و اسم شما. مسیر نسبی از همون جایی که الان هستین حساب می‌شه. اگه یه دستوری فایل رو پیدا نکرد، نُه بار از ده بار، مشکل اینه که دارین از پوشهٔ اشتباه اجراش می‌کنین. حالا دو تا ترفند که سرعتتون رو ده برابر می‌کنه. ترفند اول: کلید Tab. شروع کنین به تایپ اسم یه پوشه یا فایل، و Tab بزنین؛ ترمینال خودش بقیه‌ش رو کامل می‌کنه. هم سریع‌تره، هم دیگه غلط تایپی ندارین.

ترفند دوم: کلید فلش بالا. دستورهای قبلی‌تون رو یکی‌یکی برمی‌گردونه. لازم نیست یه دستور طولانی رو دوباره تایپ کنین. و اگه با Ctrl و R کار کنین، می‌تونین بین همهٔ دستورهای قبلی جست‌وجو کنین. حالا چند تا دستور برای ساختن و جابه‌جا کردن فایل. با mkdir یه پوشهٔ جدید می‌سازین. با cp کپی می‌کنین، با mv جابه‌جا می‌کنین یا اسمش رو عوض می‌کنین، و با cat محتوای یه فایل رو همون‌جا می‌خونین. توی پاورشل، همهٔ این‌ها هم کار می‌کنن، چون ویندوز براشون اسم مستعار گذاشته.

و یه دستور دیگه هم هست: rm، برای پاک کردن. و اینجا باید خیلی دقت کنین. فایلی که با rm پاک می‌شه، به سطل زباله نمی‌ره. مستقیم حذف می‌شه، و برگشتی هم نداره. پس هیچ‌وقت rm رو بدون اینکه دقیق بدونین دارین چی رو پاک می‌کنین، اجرا نکنین. ترمینال فقط برای فایل‌ها نیست؛ برای اجرای برنامه‌ها هم هست. وقتی اسم یه برنامه رو می‌نویسین، مثل node یا پایتون (Python: یه زبان برنامه‌نویسی)، ترمینال اجراش می‌کنه. و اینجا می‌رسیم به «مدیر بسته»؛ ابزارهایی که برنامه‌ها و کتابخونه‌ها رو براتون نصب می‌کنن.

توی دنیای JavaScript، npm. توی پایتون، pip. و برای نصب برنامه‌های کامل، روی Windows، winget، و روی Mac، Homebrew. مثلاً با یه دستور npm install، همهٔ چیزهایی که یه پروژه لازم داره، خودکار دانلود و نصب می‌شه. برای همینه که توی آموزش‌ها همیشه یه خط می‌بینین که می‌گه «اول این رو اجرا کنین». اون خط، به جای ده دقیقه دانلود و نصب دستی، کار رو در چند ثانیه انجام می‌ده.

حالا یکی از رایج‌ترین خطاهایی که می‌بینین: «command not found». و دلیلش تقریباً همیشه یکیه. ترمینال برای پیدا کردن یه برنامه، فقط توی یه سری پوشهٔ مشخص می‌گرده. فهرست این پوشه‌ها اسمش PATH ـه. اگه یه برنامه نصب شده باشه ولی پوشه‌ش توی PATH نباشه، ترمینال پیداش نمی‌کنه و می‌گه همچین دستوری نمی‌شناسم. راه‌حل‌ها هم معمولاً ساده‌ان. اول، مطمئن بشین برنامه واقعاً نصب شده. دوم، بعد از نصب، ترمینال رو ببندین و دوباره باز کنین؛ چون ترمینال PATH رو فقط موقع باز شدن می‌خونه.

و این دومی، جواب خیلی از مشکل‌هاست. PATH در واقع یکی از چیزی به اسم «متغیرهای محیطی» ـه. متغیر محیطی، یه اسم و یه مقداره که برنامه‌ها می‌تونن بخوننش. مثلاً خیلی از ابزارها کلید ای‌پی‌آی (API: راه وصل شدن برنامه‌ها) رو از یه متغیر محیطی می‌خونن، به جای اینکه کلید داخل کد نوشته بشه. همون فایل .env که توی قسمت قبل دربارش حرف زدیم، دقیقاً همین کار رو می‌کنه: یه جای امن برای این متغیرها، که هیچ‌وقت نباید روی گیت هاب (GitHub) بره. بعضی دستورها اجرا می‌شن و تموم می‌شن.

ولی بعضی‌ها روشن می‌مونن. مثلاً وقتی یه سایت رو روی کامپیوتر خودتون اجرا می‌کنین، با یه دستور مثل npm run dev، یه سرور روشن می‌شه و می‌گه سایت روی localhost، پورت سه هزار، در دسترسه. localhost یعنی خود کامپیوتر شما. و پورت، مثل شمارهٔ در یه ساختمونه؛ هر برنامه پشت یه شماره منتظر می‌مونه. تا وقتی این سرور روشنه، اون ترمینال مشغوله. برای متوقف کردنش، کافیه Ctrl و C رو بزنین. و اگه می‌خواین همزمان دستور دیگه‌ای هم بزنین، یه ترمینال دوم باز کنین. یه نکتهٔ مهم: اگه یه بار سرور رو درست نبستین و بار بعد گفت پورت مشغوله، یعنی یه نسخهٔ قبلی هنوز روشنه.

وقتی یه دستور خطا می‌ده، اولین واکنش خیلی‌ها اینه که بترسن یا پنجره رو ببندن. ولی خطا، در واقع پیامیه که داره بهتون می‌گه دقیقاً چی اشتباه شده. یه عادت خوب: همیشه از آخر به اول بخونین. معمولاً خط‌های آخر، دلیل اصلی رو می‌گن. و یه عادت بهتر برای ما: کل متن خطا رو کپی کنین و بدین به ایجنت یا هوش مصنوعی. بیشتر وقت‌ها توی چند ثانیه می‌گه مشکل چیه و چطوری حلش کنین.

حالا مهم‌ترین بخش این ویدیو. ترمینال قدرتمنده، و همین قدرت می‌تونه خطرناک باشه. اول، rm با گزینه‌های r و f؛ یعنی پاک کردن یه پوشه با همهٔ محتواش، بدون هیچ سؤالی. یه اشتباه کوچیک توی مسیر، و یه پوشهٔ کامل از بین می‌ره. دوم، دستورهایی که با sudo شروع می‌شن، یا ترمینالی که با دسترسی Administrator باز شده. یعنی به اون دستور اجازهٔ کامل روی کل سیستم می‌دین. فقط وقتی استفاده کنین که دقیقاً بدونین چرا لازمه. و سوم، و رایج‌ترین تله: کپی کردن یه دستور از یه سایت یا یه پیام ناشناس و اجراش بدون اینکه بفهمین چیکار می‌کنه.

مخصوصاً دستورهایی که یه چیزی رو از اینترنت دانلود می‌کنن و مستقیم اجرا می‌کنن. قانون ساده: دستوری که نمی‌فهمین رو اجرا نکنین. اول از هوش مصنوعی بپرسین این دستور دقیقاً چیکار می‌کنه. و حالا، دلیل اصلی اینکه این ویدیو رو ساختیم: ایجنت‌ها. کلاد کد و کدکس توی ترمینال اجرا می‌شن، و ایجنت آنتی‌گرویتی هم دستورهاش رو توی ترمینال اجرا می‌کنه. شما توی ترمینال باهاشون حرف می‌زنین، و اون‌ها خودشون دستورهای ترمینال رو اجرا می‌کنن: فایل می‌سازن، برنامه نصب می‌کنن، تست اجرا می‌کنن، و Git رو مدیریت می‌کنن.

ولی اینجا یه نکتهٔ خیلی مهم هست. معمولاً قبل از اجرای یه دستور، ایجنت ازتون اجازه می‌گیره. و همین‌جاست که دونستن ترمینال به کارتون میاد. وقتی می‌بینین می‌خواد یه دستور rm اجرا کنه، یا یه چیزی رو با sudo نصب کنه، باید بفهمین چی داره می‌شه، قبل از اینکه تأیید کنین. دکمهٔ تأیید رو چشم‌بسته نزنین. و یه نکتهٔ مخصوص Windows: بعضی آموزش‌ها دستورهای Mac و Linux رو می‌دن، که توی پاورشل عیناً کار نمی‌کنن. اگه دیدین یه دستور کار نکرد، به ایجنت بگین «من روی Windows و پاورشل هستم»؛ معادلش رو بهتون می‌ده. پس بیاین مرور کنیم.

ترمینال، پنجره‌ایه که توش تایپ می‌کنین؛ shell، مغزیه که دستور رو می‌فهمه. با pwd، ls و cd جابه‌جا می‌شین؛ با Tab و فلش بالا سرعتتون چند برابر می‌شه. با مدیرهای بسته برنامه نصب می‌کنین؛ «command not found» یعنی PATH، و اول ترمینال رو دوباره باز کنین. Ctrl و C هر برنامه‌ای رو متوقف می‌کنه. خطاها رو از آخر بخونین و به ایجنت بدین. و هیچ دستوری رو که نمی‌فهمین، اجرا نکنین. اگه این ویدیو به کارت اومد، لایک کن تا یادت نرفته. سؤالی داری؟ همین الان توی کامنت‌ها بپرس.

یادت نره سابسکرایب کنی، و برای دوستات هم بفرست که اونا هم یاد بگیرن. توی قسمت بعدی مفاهیم پایه، می‌ریم سراغ ای‌پی‌آی: اینکه برنامه‌ها چطوری با هم حرف می‌زنن. می‌بینمتون.