ترمینال جایی است که لینوکس از آنجا شروع می شود – و شما نیز باید از آنجا شروع کنید

ترمینال جایی است که لینوکس از آنجا شروع می شود – و شما نیز باید از آنجا شروع کنید

ترمینال جایی است که لینوکس از آنجا شروع می شود – و شما نیز باید از آنجا شروع کنید

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

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

ترمینال، خط فرمان، شل

اگرچه «ترمینال»، «خط فرمان» و «پوسته» اغلب به جای یکدیگر استفاده می‌شوند، اما به یادگیری تمایزات کلی بین این اصطلاحات کمک می‌کند. کلمه “ترمینال” از دوران قدیم یونیکس – معماری که لینوکس بر آن استوار است – می آید، زمانی که پردیس های دانشگاه و مراکز تحقیقاتی یک کامپیوتر به اندازه اتاق داشتند و کاربران با دسترسی به پایانه های صفحه کلید و صفحه نمایش پراکنده در اطراف با آن ارتباط برقرار می کردند. محوطه دانشگاه و با کابل های بلند به هاب مرکزی متصل می شود.

امروزه، بسیاری از ما با پایانه های واقعی مانند آن سروکار نداریم. در عوض، ما به شبیه‌سازها دسترسی داریم – رابط‌هایی در سیستم‌های یونیکس مانند که مکانیسم کنترل ترمینال را تقلید می‌کنند. نوعی شبیه ساز ترمینال که به احتمال زیاد مشاهده می کنید “شبه ترمینال” نامیده می شود.

که “پنجره ترمینال” نیز نامیده می شود، شبه ترمینال یک برنامه سیستم عامل در جلسه گرافیکی معمولی دسکتاپ شما است. پنجره ای را باز می کند که امکان تعامل با پوسته را فراهم می کند. یک نمونه از این ترمینال Gnome یا KDE Konsole است. برای هدف این راهنما، من از “ترمینال” برای اشاره انحصاری به شبیه سازهای ترمینال استفاده می کنم.

“خط فرمان” به سادگی نوع رابط کنترلی است که در ترمینال استفاده می‌شود، به این دلیل که شما خطوط متنی را می‌نویسید که به عنوان دستور تفسیر می‌شوند.

“پوسته” برنامه ای است که خط فرمان از آن برای درک و اجرای دستورات شما استفاده می کند. پوسته پیش فرض رایج در لینوکس Bash است، اما موارد دیگری مانند Zsh و پوسته سنتی یونیکس C وجود دارد.

سازمان فایل

آخرین چیزی که قبل از غواصی باید بدانید نحوه سازماندهی فایل ها است. در سیستم‌های شبه یونیکس، دایرکتوری‌ها در یک درخت وارونه مرتب می‌شوند و سیستم فایل ریشه (که با علامت “/” مشخص شده و با دایرکتوری “/root” متفاوت است) به عنوان نقطه شروع است.

سیستم فایل ریشه شامل تعدادی دایرکتوری در داخل خود است، که دایرکتوری ها و فایل های مربوط به خود را دارند، و به همین ترتیب، در نهایت گسترش می یابد تا هر فایلی را که رایانه شما می تواند به آن دسترسی داشته باشد، در بر گیرد. دایرکتوری‌ها مستقیماً در سیستم فایل ریشه، در نشان‌گذاری دایرکتوری، درست بعد از «/» داده می‌شوند.

به عنوان مثال، دایرکتوری “bin” که در داخل ریشه قرار دارد به عنوان “/bin” نشان داده می شود. همه دایرکتوری ها در سطوح بعدی با یک “/” از هم جدا می شوند، بنابراین دایرکتوری “bin” در پوشه “usr” در سیستم فایل ریشه به عنوان “/usr/bin” نشان داده می شود. علاوه بر این، فایلی به نام “bash” (پوسته)، که در “bin” در “usr” است به عنوان “/usr/bin/bash” فهرست می شود.

پس چگونه این فهرست ها و فایل ها را پیدا می کنید و با آنها کار می کنید؟ با استفاده از دستورات برای پیمایش.

برای اینکه بفهمید کجا هستید، می توانید “pwd” (“چاپ دایرکتوری کاری”) را اجرا کنید و مسیر کامل دایرکتوری که در حال حاضر در آن هستید را دریافت خواهید کرد. (توجه داشته باشید که در همه نمونه های قطعه کد، اول “$” نشان دهنده خط فرمان است، رشته ای از متن در هر خط قبل از دستوری که وارد می کنید.)

$ pwd

برای اینکه ببینید به کجا می توانید بروید، “ls” را اجرا کنید تا محتویات دایرکتوری فهرست شود.

$ ls

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

$ ls /directory/another_directory

اگرچه استفاده از “ls” می تواند بیشتر از این را به شما بگوید. اگر “-l” را بین دستور و مسیر با یک فاصله در هر طرف وارد کنید، لیست “طولانی” را دریافت خواهید کرد که مالک فایل، اندازه و موارد دیگر را مشخص می کند.

$ ls -l

فرمان‌ها، گزینه‌ها، آرگومان‌ها

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

پس از آن می‌توانید عملکرد فرمان را با افزودن گزینه‌هایی تغییر دهید، که یا یک خط تیره و یک حرف (“-a”) یا دو خط تیره و یک کلمه (“–all”) هستند.

$ ls -a$ ls –همه

آرگومان – چیزی که فرمان روی آن عمل می کند – شکل یک مسیر را به خود می گیرد. بسیاری از دستورات برای ارائه اطلاعات اولیه نیازی به آرگومان ندارند، اما برخی از آنها عملکرد بسیار بیشتری را به آنها ارائه می دهند یا به طور کامل به آنها نیاز دارند.

کارهایی که باید انجام داد

مرحله بعدی حرکت بین دایرکتوری ها است که با اجرای “cd” (“تغییر دایرکتوری”) انجام می دهید.

$ سی دی

اگر مسیری را به عنوان آرگومان ارائه دهید، شما را به آن دایرکتوری منتقل می کند. اگر این کار را نکنید، شما را به فهرست اصلی کاربر بازمی گرداند (به عنوان مثال، برای کاربر “pablo”، “/home/pablo”).

$ سی دی /home/pablo

دو نوع مسیر وجود دارد – مطلق و نسبی. مسیرهای مطلق یا کامل مسیرهایی هستند که از ریشه شروع می شوند. با این حال، شما همچنین می توانید مسیری را از دایرکتوری که در آن قرار دارید ارائه دهید، که در این صورت نسبی است.

اکنون که می دانید چگونه فایل ها را پیدا کنید، می خواهید بتوانید کاری با آنها انجام دهید. یک گزینه این است که آنها را با “cp” کپی کنید. برای استفاده از آن، باید دو آرگومان ارائه دهید که با یک فاصله از هم جدا شده اند: فایلی که باید کپی شود و جایی که می خواهید برود.

$ cp نسخه اصلی

اگر آرگومان دوم یک دایرکتوری باشد، یک کپی دقیق را در آنجا قرار می دهد، اما اگر یک نام فایل باشد، یک کپی با نام فایل داده شده را قبل از آخرین اسلش در فهرست قرار می دهد.

توجه داشته باشید که اگر فایلی از قبل در همان مکان و با همان نام آرگومان دوم وجود داشته باشد، آرگومان اولی رونویسی می شود.

همچنین می توانید فایل ها را با دستور “mv” جابجا کنید. مانند “cp”، “mv” فایل اصلی را به عنوان آرگومان اول و مکان جدید را به عنوان آرگومان دوم می گیرد. همچنین مانند cp، اگر آرگومان دوم یک نام فایل باشد، نام فایل را به آن تغییر می دهد.

$ mv original_location new_location

قانون بازنویسی یا “کلوببر کردن” از “cp” در مورد “mv” نیز صدق می کند.

Off You Go

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

با این روحیه، می‌خواهم چند منبع را برای پاسخ به سؤالات خود در اختیار شما بگذارم – اگرچه مطمئناً می‌توانید از دیگران از جمله من بپرسید!

اگر می خواهید آنچه را در یک فایل وجود دارد بدون اینکه تصادفاً آن را خراب کنید بررسی کنید، “کمتر” را با فایل به عنوان آرگومان اجرا کنید.

$$ کمتر نام فایل

این آن را با یک بیننده باز می‌کند، که از ویرایش شما جلوگیری می‌کند و به شما اجازه می‌دهد تا در اوقات فراغت خود در آن جا پیمایش کنید.

اگر مطمئن نیستید که چه نوع فایلی است، “فایل” را روی آن اجرا کنید (دوباره، با فایل به عنوان آرگومان).

برای دریافت ایده از اینکه چه دستوری ممکن است در یک موقعیت خاص مفید باشد، می توانید “apropos” را با یک کلمه کلیدی اجرا کنید و لیستی از برنامه های مربوطه را دریافت خواهید کرد.

کلمه کلیدی $ apropos

اگر می‌خواهید درک کنید که یک فرمان چه می‌کند، به همراه یک صفحه مرجع برای گزینه‌ها و آرگومان‌هایی که یک فرمان می‌تواند استفاده کند، می‌توانید «man» (برای «دستی») و سپس نام فرمان را اجرا کنید.

$ man command_name

در اقساط آینده، من قصد دارم برخی از قابلیت های پیشرفته تر ترمینال را نشان دهم، اما اگر به دنبال تکمیل این مقدمه هستید، توصیه می کنم “خط فرمان لینوکس” یک PDF رایگان توسط ویلیام شاتز.

یکی دیگر از منابع خوب مجموعه ویدیوهای مبتدی لینوکس “Terminal Linux — شروع به کار !» توسط hak5.

این باید بیش از اندازه کافی باشد تا حتی بلندپروازترین شما را تا زمان نمایش قسمت بعدی من مشغول نگه دارد. تا آن زمان، آزمایش ترمینال مبارک!

یادداشت ویرایشگر – ۱۳ مارس ۲۰۱۷: نسخه منتشر شده اصلی این مقاله شامل نمونه‌های قطعه کد نمی‌شود. نویسنده جاناتان تراسی آنها را در پاسخ به پیشنهاد مفید خواننده دوراندالتتا اضافه کرد.

حتما بخوانید : شکستن پوسته
ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *