ضمیمه ۱ - آشنایی با واسط خط فرمان (CLI)

امروزه متداول‌ترین روش تعامل با سیستم‌عامل استفاده از واسط‌های گرافیکی است (مانند پنجره‌های مختلف در سیستم‌عامل شما یا ظاهر سیستم‌عامل تلفن همراهتان) اما از ابتدای عصر کامپیوترهای دیجیتالی روش دیگری نیز بین کاربران متداول بود تحت عناوینی چون “محیط متنی” یا “واسط خط فرمان”.نرم‌افزارهای این محیط در سیستم‌های عامل مختلف با نام هایی چون ترمینال، کنسول، cmd، tty و… مورد خطاب قرار می‌گیرند و برخلاف تصور عامه (که عمدتا حاصل تبلیغات فیلم های هالیوود و مجله های تکنولوژی برای نوجوانان است)، کار در این محیط‌ها بسیار هم ساده است. به‌سادگی چند کلمه تایپ کردن. :)

هدف این کتاب آشناکردن شما با محیط خط فرمان و آموزش اصول و دستورات اساسی آن است و تمام جنبه‌های ترمینال را شرح نمی‌دهیم، اما راه یادگرفتن را در این کتاب می‌آموزید.

در ترمینال‌ها دستوراتی تایپ و اجرا می‌شوند بسیاری از کارهایی که در محیط‌های گرافیکی قابل انجام بودند، اینجا هم می‌توان به همان سادگی و وضوح انجام داد. مثلا اگر در محیط گرافیکی با دابل کلیک کردن روی یک پوشه (دایرکتوری) واد آن پوشه میشدیم حالا در محیط متنی با دستور `cd نام‌پوشه` و اینتر کردن، از محیط متنی وارد پوشه ی مورد نظر خود میشوید.

دو سری سیستم های عامل پرکاربرد را مورد بررسی قرار میدهیم : - سیستم‌های عامل خانواده‌ی یونیکس (توزیع‌های لینوکس، Mac OSx، خانواده BSD و …) - سیستم عامل ویندوز

عمده ی صحبتهای ما با ابزارهای خانواده ی یونیکس است و ناچارا روی ویندوز هم ابزارهای آن سیستم‌ها را نصب می‌کنیم.

در هر ترمینال یک پوسته (یا شل) اجرا می‌شود که همانند زبان های برنامه‌نویسی قواعد و دستورات مشخص خود را دارند و از بین پوسته‌های مختلف میتوانید پوسته‌ی مورد نیاز خود را انتخاب نمایید.معروف‌ترین پوسته‌ی ترمینال در حال حاضر bash نام دارد که بطور پیش‌فرض روی اکثر توزیع‌های خانواده‌ی لینوکس و همچنین Mac OSx فعال است.

اجرای ترمینال در سیستم‌های عامل مختلف: - توزیع‌های لینوکس - مک‌اواس ایکس - ویندوز

دستورات مقدماتی

امیدوارم دید کلی نسبت به خط فرمان پیدا کرده باشید. حالا کمی با دستورات پایه‌ای bash درگیر میشویم.

دستور ls : لیست

دستور ls را در ترمینال خود تایپ و اینتر کنید. به‌این‌صورت:

ls

خب حالا لیست فایل‌های شما در فولدری که حاضر هستید، به شما نشان داده می‌شود. اگر اینطور نیست دوباره دستور ls را بزنید و این بار دقت کنید که دستور را تماما با حروف کوچک تایپ کنید چون bash به حروف کوچک و بزرگ حساس است

برای مثال LS با Ls برابر نیستند و البته گزینه ی درست هم ls است.

دستور mkdir : ساختن دایرکتوری جدید

دستور mkdir برای ساختن دایرکتوری‌ها به کار می‌رود. به صورت زیر:

mkdir نام‌دایرکتوری

برای مثال برای ساختن یک دایرکتوری به نام project دستور را بصورت زیر در ترمینال بنویسید و اینتر کنید:

mkdir project

خب حالا کافیست دستور ls را در ترمینال بزنید. دایرکتوری ساخته‌شده‌ی خود را در لیست نمایش داده شده خواهید دید.

دستور cd: جابجایی بین دایرکتوری‌ها

برای رفتن به داخل دایرکتوری که ساختیم، از دستور cd استفاده میکنیم.به‌صورت زیر:

cd نام‌دایرکتوری

که برای مثال ما دستور به این صورت است: .. code-block:: bash

cd project

خب شما وارد دایرکتوری project شدید. کافیست یکبار دیگر دستور ls را اجرا کنید تا از خالی بودن دایرکتوری مطمئن شوید.

فایلهای مخفی

در سیستم‌های عامل شبه‌یونیکس، فایل‌هایی که با کاراکتر “.” (نقطه) شروع می‌شوند به‌صورت پیش‌فرض مانند فایل‌های مخفی در ویندوز عمل کرده و نمایش داده نمی‌شوند. یعنی اگر دستور ls را اجرا کنید فایل‌ها و دایرکتوری‌هایی که با این کاراکتر شروع می‌شوند، نمایش داده نمی‌شود.

اما اکثر دستورات خط فرمان آپشن‌های زیادی برای بهبود عملکرد دستورات بنا به نیاز کاربران دارند، که این آپشن‌ها بعد - یا – پس از نام دستور می‌آیند. به‌عنوان یک مثال عملی برای نمایش فایل‌های مخفی با دستور ls این دستور را با آپشن -a به کار می‌بریم، بصورت زیر:

ls -a

حال لیست شما شامل فایل‌های مخفی نیز می‌شود.

صفحات راهنما

گفتیم که هر دستور آپشن‌های مختلفی برای کاربردهای مختلف دارد. برای یافتن توضیحات و همچنین آپشن‌ها و توضیحات کاربردهای آنها می‌توانید از صفحات راهنما یا Man Pageها استفاده کنید.این توضیحات با دستور man، در دسترس هستند. به‌صورت زیر:
man نام‌دستور

برای مثال برای دیدن توضیحات دستور ls دستور به‌صورت زیر می‌شود:

man ls

برای خروج از حالت نمایش صفحات راهنما، کلید q را فشار دهید.

بازگشت به عقب

در دستور cd تنها وارد شدن به دایرکتوری های مختلف را دیدیم.برای بازگشتن به دایرکتوری بالاتر از دایرکتوری حاضر دستور cd را بصورت زیر به کار می‌بریم:

cd ..

دستور pwd: نمایش مسیر حاضر

دانستن مسیری که در حال حاضر در آن قرار داریم به ما کمک می‌کند که دایرکتوری‌های مورد نظرمان را ساده‌تر بیابیم. برای این منظور از دستور pwd استفاده می‌کنیم. بصورت زیر : .. code-block:: bash

pwd

دستور بالا را بنویسید و اینتر کنید. نتیجه‌ی نمایش داده شده محلیست که در حال حاضر آنجا قرار دارید.

دستور rm: حذف

برای حذف فایل‌ها و دایرکتوری‌ها، از دستور rm استفاده می‌کنیم، اما روش حذف برای یک فایل و یک دایرکتوری متفاوت است. برای حذف یک فایل دستور را بصورت زیر استفاده میکنیم :

rm نام‌فایل

برای مثال برای حذف فایلی به نام hi.txt دستور به‌صورت زیر است:

rm hi.txt

برای حذف یک دایرکتوری آپشن ‍`-r` را به کار میبریم. به‌صورت زیر:

rm -r نام دایرکتوری

برای مثال برای حذف یک دایرکتوری به نام project دستور را بصورت زیر به کار می‌بریم:

rm -r project

توجه داشته باشید که حذف دایرکتوری به این روش خطرناک است و تمام محتویات دایرکتوری را برای همیشه حذف می‌کند.