ناوبری در ترمینال
برای استفاده از ترمینال به غیر از تایپ کردن میبایست حرکت کردن در فایلسیستم لینوکس را آموخت.
در این آموزش، فرمانهای زیر را از فرمانهای ترمینال معرفی خواهیم کرد:
فرمان pwd: نمایش نام دایرکتوری جاری
فرمان cd: تغییر دایرکتوری
فرمان ls: لیست کردن محتوای دایرکتوری
درک درخت فایلسیستم
همانند ویندوز، سیستمعامل لینوکس فایلهای خود را بهصورت سلسلهمراتبی در دایرکتوریها قرار میدهد که به آن ساختار دایرکتوری سلسلهمراتبی (hierarchical directory structure) گفته میشود. این بدین معنی است که فایلها در یک الگوی درختی از دایرکتوریها (که بعضاً به آنها Folder هم میگویند.) سازماندهی میشود.
اولین دایرکتوری موجود در فایلسیستم، دایرکتوری ریشه (root directory) نام دارد. دایرکتوری root که با علامت / نمایش داده میشود شامل تمامی فایلها و زیردایرکتوریها است که خود آنها نیز فایلها و دایرکتوریهایی را شامل میشوند.
توجه داشته باشید که در سیستمهای ویندوزی برای هر دستگاه ذخیرهسازی یک درخت فایلسیستم وجود دارد اما در سیستمهای مبتنی بر یونیکس از جمله لینوکس فقط یک درخت فایلسیستم بدون در نظر گرفتن تعداد درایوها و دستگاه ذخیرهسازی متصل به کامپیوتر موجود است.
دایرکتوری جاری (دایرکتوری کاری)
اکثر ما احتمالاً با یک مدیر گرافیکی که درخت فایلسیستم را نشان میدهد، آشنا هستیم. (همانند شکل زیر)
تصویر فوق گویای نمایش سلسلهمراتبی دایرکتوریها است اما باید توجه داشت که خط فرمان یا ترمینال هیچگونه نمای بصری ندارد. بنابراین برای حرکت در درخت فایلسیستم باید از روش دیگری استفاده کرد. در خط فرمان و در هر زمان معین همیشه در یک دایرکتوری خاص هستیم و میتوان فایلهای موجود در دایرکتوری و مسیر دایرکتوری بالاتر (دایرکتوری والد) و زیردایرکتوریها را مشاهده کرد. دایرکتوری که در آن هستیم دایرکتوری جاری نام دارد که برای نمایش آن از فرمان pwd (سرنام واژگان print working directory) استفاده میشود:
[me@linuxbox ~]$ pwd /home/me
هنگامی که ترمینالی را برای اجرای فرمانها میگشاییم دایرکتوری جاری در دایرکتوری home مستقر میگردد. هر حساب کاربری به دایرکتوری home خود ارجاع داده میشود.
لیست محتویات یک دایرکتوری
برای لیست کردن فایلها و دایرکتوریهای دایرکتوری جاری از فرمان ls استفاده میشود:
[me@linuxbox ~]$ ls Desktop Documents Music Pictures Public Templates Videos
در واقع میتوان از فرمان ls برای لیست کردن محتویات هر دایرکتوری استفاده کرد.
تغییر دایرکتوری جاری
برای تغییر دایرکتوری جاری در ترمینال از فرمان cd استفاده میشود. برای استفاده ابتدا cd را تایپ کرده و پس از آن نام دایرکتوری مورد نظر نوشته میشود. نام دایرکتوری در واقع مسیری است متشکل از شاخههای درخت فایلسیستم و دایرکتوری که میخواهیم به آن دسترسی داشته باشیم. به این مسیر اصطلاحاً Pathname میگویند که میتوان آن را با دو روش مطلق و نسبی مشخص کرد. ابتدا با روش مطلق شروع میکنیم.
Pathname مطلق
Pathname مطلق با دایرکتوری ریشه شروع شده و پس از آن زیرشاخههای مربوطه نوشته میشود تا مسیر دایرکتوری یا فایل تکمیل شود. به عنوان نمونه، یک دایرکتوری در سیستم وجود دارد که اکثر برنامههای سیستم در آن نصب شدهاند. Pathname این دایرکتوری /usr/bin میباشد. این بدین معناست که در دایرکتوری ریشه (علامت /) دایرکتوری دیگری با نام usr وجود دارد که حاوی دایرکتوری bin میباشد.
[me@linuxbox ~]$ cd /usr/bin [me@linuxbox bin]$ pwd /usr/bin [me@linuxbox bin]$ ls ...Listing of many, many files ...
مشاهده میشود که دایرکتوری جاری به /usr/bin تغییر یافته است که حاوی فایلهای متعددی است. توجه داشته باشید اعلان پوسته چگونه تغییر یافته است به جای دایرکتوری home (علامت ~) دایرکتوری جاری یعنی bin قرار گرفته است.
Pathname نسبی
یک Pathname مطلق از دایرکتوری root شروع شده و به مقصد آن منتهی میشود اما Pathname نسبی از دایرکتوری جاری شروع میشود. برای این کار، از دو علامت خاص برای نشان دادن Pathname نسبی استفاده میشود. این علائم ویژه، نقطه (.) و دونقطه (..) میباشد. نماد نقطه به دایرکتوری جاری و نماد دونقطه به دایرکتوری والد دایرکتوری جاری اشاره میکند.
حال به چگونگی کارکرد آن خواهیم پرداخت. به عنوان نمونه دایرکتوری جاری را دوباره به /usr/bin تغییر دهید:
[me@linuxbox ~]$ cd /usr/bin [me@linuxbox bin]$ pwd /usr/bin
اکنون میخواهیم دایرکتوری کاری را از /usr/bin به والد آن یعنی /usr تغییر مسیر دهیم. برای این کار میتوان از دو روش استفاده کرد. روش Pathname مطلق:
[me@linuxbox bin]$ cd /usr [me@linuxbox usr]$ pwd /usr
یا بهوسیله Pathname نسبی:
[me@linuxbox bin]$ cd .. [me@linuxbox usr]$ pwd /usr
در هر دو روش نتیجه، یکسان است. حال باید از کدام یک استفاده کنیم؟ از روشی که نیاز به تایپ کمتری دارد!
به همین ترتیب میتوان دایرکتوری جاری را از /usr به /usr/bin تغییر دهیم، روش Pathname مطلق:
[me@linuxbox usr]$ cd /usr/bin [me@linuxbox bin]$ pwd /usr/bin
و یا از طریق روش Pathname نسبی:
[me@linuxbox usr]$ cd ./bin [me@linuxbox bin]$ pwd /usr/bin
برخی از میانبرهای مفید
| میانبر | نتیجه |
|---|---|
| cd | دایرکتوری جاری را به دایرکتوری home سیستم شما تغییر میدهد. |
| cd - | دایرکتوری جاری را به آخرین دایرکتوری جاری تغییر میدهد. |
| cd ~username | دایرکتوری جاری را به دایرکتوری home کاربر username تغییر میدهد. به عنوان مثال cd ~bob دایرکتوری جاری را به دایرکتوری home کاربر bob تغییر میدهد. |
درباره فرشید نوتاش حقیقت
همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرمافزارهای آزاد/ متنباز و سیستمعامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.
نوشتههای بیشتر از فرشید نوتاش حقیقتاین سایت از اکیسمت برای کاهش جفنگ استفاده میکند. درباره چگونگی پردازش دادههای دیدگاه خود بیشتر بدانید.

دیدگاهتان را بنویسید