CLI واسط خط فرمان چیست و چه تفاوتی با GUI دارد؟
در این مقاله میخوانید
- CLI یا واسط خط فرمان چیست؟
- نگاهی بر تاریخچه Cli؛ محبوبیت رابط خط فرمان از کجا آغاز شد؟
- نحوه عملکرد CLI؛ طرز تفسیر و اجرای دستور
- در سیستمعاملهای مختلف رابط خط فرمان چیست؟
- چرا از CLI بهجای GUI استفاده کنیم؟
- کاربرد CLI؛ از نصب نرمافزار تا کانفیگ دیتاسنتر
- با برخی از دستورهای کاربردی CLI آشنا شوید
- جمعبندی
- سؤالات متداول
واسط خط فرمان یا CLI چیست؟ به بیانی ساده رابط خط فرمان این امکان را فراهم میکند تا با واردکردن دستور در پنجره Command، برنامهای را اجرا یا سیستمی را کانفیگ کنید. با کمک CLI میتوانید هر دستوری را بهصورت متنی وارد کنید و در کسری از ثانیه شاهد اجرای آن باشید. روی همه سیستمها ازجمله لینوکس و ویندوز یا macOS علاوهبر رابط گرافیکی GUI، رابط خط فرمان یا CLI وجود دارد.
در این مطلب از بلاگ پارس پک، توضیح میدهیم که واسط خط فرمان چیست و چه کاربردی دارد. اگر هنوز در استفاده از این ابزار قدرتمند برنامهنویسی شک دارید، پیشنهاد میکنیم این مطلب را تا انتها مطالعه کنید.
CLI یا واسط خط فرمان چیست؟
واسط خط فرمان یا Cli (command line interface) نوعی محیط ویرایش و اجرای دستور مبتنیبر متن است که بهعنوان یک پلتفرم واسط بهکمک تایپ دستورات با سیستمعامل یا برنامه ارتباط برقرار میکند و کاربران میتوانند با نوشتن دستورات موردنظر، پاسخی سریع از سیستم دریافت کنند. واسط خط فرمان برخلاف واسط گرافیکی از دستورات پیروی میکند. پرکاربردترین سیستم عاملی که از طریق رابط خط فرمان یا CLI مورداستفاده قرار میگیرد، توزیع centos لینوکس بوده که در زمینه مدیریت سرور و امور مربوط به شبکه کاربرد دارد.
نگاهی بر تاریخچه Cli؛ محبوبیت رابط خط فرمان از کجا آغاز شد؟
محبوبیت CLI به زمان ۱۹۶۰ بازمیگردد. در آن زمان، مردم فقط صفحهکلید و نمایشگری داشتند که اطلاعات متنی روی آن بهنمایش درمیآمد. سیستمعاملهایی مانند MS-DOS از CLI بهعنوان رابط خط فرمان استاندارد استفاده کردند. درواقع، تنها راه تعامل با کامپیوتر واردکردن دستورها بهصورت متنی بود و پس از تایپ هر فرمان، کامپیوتر نتیجه را بهصورت متنی به کاربر تحویل میداد.
پس از سالها و با اختراع ماوس، تعامل جدیدی بین کامپیوتر و کاربران شکل گرفت. پسازآن، سیستمعاملها توسعه پیدا کردند و بهکمک رابط کاربری گرافیکی، کاربری جذابتری برای کاربران بهوجود آوردند. با اینکه رابط گرافیکی یا GUI توانست در دل برنامهنویسان جایی برای خود باز کند، همچنان برخی از برنامهنویسان حرفهای ترجیح میدهند برای اجرای دستورها بهجای جستوجو میان فرایندهای پیچیده منو و کلید و آیکون، از رابط خط فرمان استفاده کنند. گفتنی است برخی از سیستمعاملها امکان استفاده از هر دو روش را برای کاربر فراهم کردند. مهمترین نکته در استفاده از CLI تایپ درست دستورهاست تا موجب خطا یا حذف غیرعمدی فایلها نشود؛ بههمیندلیل، برخی از برنامهنویسان دل چندان خوشی از کار با CLI ندارند.
نحوه عملکرد CLI؛ طرز تفسیر و اجرای دستور
اگر نگاه عمیقتری به CLI بیندازیم، بخش مهمی به نام Shell را پشت عملکرد CLI میبینیم. Shell رابط کاربری ریسپانسیوی است که مسئولیت پردازش دستورها را برعهده دارد. زمانیکه دستورهای CLI را تایپ میکنید، Shell آنها را تفسیر میکند و به سیستمعامل دستور میدهد تا وظایفش را طبق دستور شما انجام دهد. درواقع، Shell مانند سرآشپز عمل میکند. وقتی مشتری سفارش غذا میدهد، سرآشپز آن را بررسی میکند و اقدامات لازم برای آمادهکردن آن را انجام میدهد.
واسط خط فرمان بهکمک صفحهکلید و با واردکردن متن دستورها در پنجره Command انجام میشود. هنگامیکه دستور مدنظرتان را وارد میکنید، کامپیوتر آن را تفسیر و اجرا میکند. همچنین، ممکن است پیغام خطایی در خروجی به شما دهد. برای مثال، بهکمک دستور زیر میخواهیم زمان فعلی را به ما در خروجی نمایش دهد:
The current time is: 14:24:40.94. Enter the new time:
در مثال بعدی، قصد داریم به کامپیوتر فرمان دهیم تا پوشه دایرکتوری به نام واسط خط فرمان ایجاد کند. با واردکردن دستور ساده زیر، بهراحتی فرمان انجام میشود:
mkdir cli
در سیستمعاملهای مختلف رابط خط فرمان چیست؟
در مایکروسافت ویندوز، میتوانید از رابط خط فرمان و برنامه Powershell بهعنوان CIL استفاده کنید. در سیستمعامل لینوکس و یونیکس نیز، Bash یا Bourne-Again Shell بهعنوان واسط خط فرمان بهکار گرفته میشود. ناگفته نماند اخیراً مایکروسافت نیز امکان استفاده از Bash در ویندوز را فراهم کرده است. بهطورکلی، هر سیستمعامل CLI خاص خودش را دارد:
- CLI سیستمعامل ویندوز: Command Line
- CLI سیستمعامل لینوکس: Bash و Shell
- CLI سیستمعامل مکاواس: Terminal Mac
- CLI پلتفرم ابری گوگل: Powershell و Cloud Shell
- CLI آمازون وب: Command Line
همچنین، با استفاده از کلیدهای میانبر روی هر سیستم میتوانید به واسط خط فرمان یا CLI دسترسی پیدا کنید. برای مثال، اگر از سیستمعامل ویندوز استفاده میکنید، کافی است در نوار جستوجوی کامپیوترتان، عبارت cmd را تایپ کنید. با این کار فهرستی از تمام دستورهای پیشفرض موجود روی سیستم به شما نمایش داده میشود.
سیستمعامل | روش اول | روش دوم |
ویندوز | در منو استارت عبارت «Command Prompt» را وارد کنید. | کلید ویندوز+R را فشار دهید تا پنجره Run باز شود. سپس عبارت «cmd» را تایپ کنید و «OK» بزنید. |
مک | آیکون جستوجو را در منو باز و عبارت «Terminal» را تایپ کنید و اینتر را بزنید. | به قسمت Application > Utilities > Terminal بروید. |
لینوکس | به بخش Applications > Accessories > Terminal بروید. | به بخش Applications > System > Terminal بروید. |
چرا از CLI بهجای GUI استفاده کنیم؟
در بررسی CLI این سوال پیش میآید که تفاوت GUI با واسط خط فرمان چیست. با استفاده از رابط گرافیکی با کلیک روی منو یا دکمه یا آیکونها، میتوانید با سیستمعامل خود ارتباط برقرار کنید. برای مثال، برای ریاستارت کامیپوتر در سیستمعامل ویندوز ابتدا باید منو Start را باز و روی علامت پاور کلیک کنید. سپس، عبارت Restart را بزنید. این در حالی است که در CLI میتوانید این سه عملیات را بهسادگی و فقط با واردکردن دستور زیر انجام دهید:
Restart /r
هرچند رابط خط فرمان برای اجرای برخی از دستورها حیاتی است، استفاده از رابط گرافیکی برای کاربران مبتدی جذابتر و سادهتر خواهد بود. بهبیانی دیگر در بررسی تفاوت CLI و GUI باید گفت باتوجهبه نوع کاربردتان، میتوانید از هریک از این دو رابط کاربری استفاده کنید. باوجوداین، درادامه به دلایل مهمی اشاره میکنیم که به شما کمک میکند تا بدانید تفاوت CLI و GUI چیست و چرا بهجای GUI از CLI باید استفاده کنید.
۱. Cli درمقایسهبا GUI به منابع کمتری احتیاج دارد
برنامههای مبتنیبر متن درمقایسهبا برنامههای مبتنیبر گرافیک منابع و فضای کمتری در سیستم شما اشغال میکند. این قضیه را میتوانید با مقایسه حجم نرمافزار گرافیکی افترافکت و نرمافزار برنامهنویسی متلب متوجه شوید. درواقع در بررسی تفاوت CLI و GUI باید گفت با CLI میتوانید کارهای مشابه GUI را با حداقل منابع انجام دهید.
۲. CLI دقیقتر از GUI است
تا زمانیکه دستوری را اشتباهی تایپ نکنید، روی دقت CLI میتوانید حساب ویژهای باز کنید. درواقع، برای مقاصد مختلف با واردکردن دستور مدنظر میتوانید بسیار دقیق و سریع به خواستهتان برسید. زمانیکه اصول اولیه کار با CLI را یاد بگیرید، متوجه خواهید شد که کار با CLI آنقدرها هم پیچیده نیست.
۳. CLI وظایف تکراری را بهراحتی انجام میدهد
در سالهای اخیر، رابط کاربری گرافیکی پیشرفت بسیاری به خود دیده است. بااینحال، ممکن است سیستمعاملی در انجام برخی دستورها بهمنظور حفظ امنیت بیشتر، منو یا دکمهای در رابط کاربری گرافیکی نداشته باشد. برای مثال، فرض کنید قصد دارید صدها فایل را در یک پوشه مدیریت کنید یا تغییر دهید. در GUI نیاز است هربار روال لازم را برای انجام هر پوشه تکرار کنید؛ درحالیکه در واسط خط فرمان بهراحتی با یک خط فرمان میتوانید این کار را برای هر صد فایل انجام دهید.
کاربرد CLI؛ از نصب نرمافزار تا کانفیگ دیتاسنتر
بهطورکلی، واسط خط فرمان برای امور مدیریت سیستم استفاده میشود؛ ازجمله:
- نصب و پیکربندی نرمافزار
- نظارت بر سورسهای کامپیوتر
- راهاندازی و ریاستارت وبسرور
- انجام فرایندهای تکراری بهطورخودکار
- تغییر نام فایل
- مدیریت لاگهای سیستم
- رفع مشکلات سرور
- کانفیگ پایگاه داده
CLI از سه بخش برای اجرای دستورها استفاده میکند. دستورهای سیستمی مربوط به بخشی از سیستمعامل است که بهصورت کدگذاریشده بهکار گرفته میشود. منظور از دستورهای اجرایی برنامههای مبتنیبر متن یا گرافیک است که واسط خط فرمان آن را اجرا میکند. سومین بخش شامل برنامههای دستوری است. در این بخش، فایلهای متنی قرار دارند که فهرستی از دستورها ازجمله دستورهای اجرایی یا سیستمی را در خود قرار دادهاند. باتوجهبه نوع سیستمعاملتان، با فراخوانی CLI میتوانید دستورها را پیادهسازی کنید.
با برخی از دستورهای کاربردی CLI آشنا شوید
واسط خط فرمان (CLI) در ویندوز و لینوکس، سینتکس کاملاً متفاوتی دارد. درادامه، تعدادی از دستورهای کاربردی و مفیدی را بررسی خواهیم کرد که در هر دو سیستمعامل ویندوز و لینوکس ازطریق Powershell یا خط فرمان استفاده میشود.
دستور | دستور لینوکس | دستور ویندوز |
فهرست فایلها در دایرکتوری اخیر | Is | Dir |
کپیکردن فایل | Cp | Copy |
تغییردادن مکان فایل | Mv | Move |
تغییردادن اسم فایل | Mv | Ren |
پاککردن فایل | Rm | Del |
ایجادکردن فایل جدید | Mkdir | Mkdir |
پاککردن صفحه ترمینال | Clear | Cls |
جستوجوی رشتهکد در فایل | Grep | Find |
بستن ترمینال | Exit | Exit |
تغییردادن مکان دایرکتوری | Cd | Cd |
جمعبندی
واسط خط فرمان یا CLI مانند رباتی است که با نوشتن هر خط دستور، فرمان شما را بهسرعت اجرا میکند. برخلاف تصورات، CLI فقط برای متخصصان حرفهای کاربرد ندارد و با دانستن برخی دستورهای ابتدایی، کاربران مبتدی نیز میتوانند از آن استفاده کنند. در این مطلب از بلاگ پارس پک، بررسی کردیم واسط خط فرمان چیست و چه تفاوتی با GUI دارد. استفاده از CLI درمقایسهبا GUI به منابع کمتری نیاز دارد، از دقت فراوانی برخوردار است، وظیفهها و دستورهای تکراری را بهراحتی انجام میدهد و قدرتمندتر است.
امیدواریم این مطلب در درک واسط خط فرمان به شما کمک کرده باشد. آیا تابهحال استفاده از CLI را تجربه کردهاید؟ بین GUI و CLI استفاده از کدامیک را ترجیح میدهید؟ دیدگاه خود را ازطریق کامنت با ما بهاشتراک بگذارید. همچنین، اگر ابهام یا سؤالی درباره این موضوع دارید، آن را با ما مطرح کنید.
برای درک بهتر پرسش «CLI چیست؟»، ربات را درمقابل نقشه گرافیکی در نظر بگیرید. فرض کنید قصد دارید به نقطه A بروید. از روی نقشه احتمالاً باید راهتان را از مسیر پرپیچوخمی پیش رویتان پیدا کنید؛ درحالیکه با گفتن اسم مکان، ربات بهترین مسیر را به شما خواهد گفت. همچنین، با آن میتوانید در تعامل باشید و دستورهای مختلف به او بدهید تا اجرا کند. واسط خط فرمان به همین صورت راهتان را هموار میکند. درحالیکه دنبالکردن آیکونهای متفاوت در رابط گرافیکی (GUI) میتواند طاقت برنامهنویسان را طاق کند، CLI یا رابط فرمان به آنان امکان میدهد تا با نوشتن چند دستور ساده به فایل مدنظر دسترسی پیدا کند.
سؤالات متداول
۱. کاربرد CLI چیست؟
رابط خط فرمان یا CLI رابط کاربری مبتنیبر متن است که برای اجرای برنامه و مدیریت فایل و تعامل با کامپیوتر استفاده میشود.
۲. تفاوت CLI و GUI چیست؟
GUI امکان استفاده از عناصر گرافیکی مانند پنجره، آیکون، منو و نماد را بهمنظور اجرای دستورها برای کاربر فراهم میکند؛ ولی CLI امکان اجرای دستورها را با خط فرمان بهصورت متنی فراهم میکند.
۳. آیا واسط خط فرمان نوعی زبان برنامهنویسی مانند پایتون یا سیشارپ است؟
خیر، CLI در سیشارپ یا C++ مانند ابزاری برای کدنویسی عمل میکند و زبان برنامهنویسی بهشمار نمیرود.