شروع کار با ترمینال لینوکس

شما در کار با محیط گرافیکی توانایی دیدن و جابه جا کردن فایل ها را دارید، اما در ترمینال لینوکس ما توانایی نمایش فایل ها را به صورت گرافیکی نداریم! پس چطوری می تونیم فایل هایمان را مدیریت کنیم؟

پس از مطالعه چه چیز هایی یاد می گیرید؟

در این درس شما به سه دستور: pwd, cd, ls آشنا خواهید شد.
اما سوالی که برای شما پیش میاد این هست که معنای این دستورات چیست؟! دانستن معنای این دستورات باعث درک بهتر آن ها می شود..

pwd(Print Working directory)به معنای چاپ دایرکتوری جاری(یا پوشه که شما در آن هستید) ls(List File and directories به معنای مرتب کردن یا ترتیب دادن فایل ها و دایرکتوری ها
cd(Change directory) تغییر دایرکتوری
اگر شما تا به حال با خط فرمان کار نکرده اید! باید دقت بیشتری روی این درس داشته باشید تا زمانی که خوب با مفاهیم آن آشنا شوید.

قبل از شروع باید با چند تا اصطلاح آشنا بشیم. اول از همه:

دایرکتوری(directory) چیست؟

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

ساختار سلسله مراتبی چیست؟!( hierarchical directory structure)

در این ساختار دایرکتوری ها بر اساس مهمترین تا غیر مهمترین مرتب می شوند.

ساختمان فایل سیستم

همانطور که میدانید فایل ها در سیستم عامل لینوکس بر اساس(ساختار سلسله مراتبی دایرکتوری) مرتب شده اند .به این معناست که آنها دارای الگو های درختی از دایرکتوری ها هستند که شامل فایل ها و دایرکتوری های دیگر می شود!
اولین دایرکتوری سیستم فایل، روت می باشد. دایرکتوری روت شامل فایل ها و زیر شاخه ها می شود که هر کدام از زیر شاخه ها شامل اطلاعات دیگری هستند و به همین شکل ادامه پیدا می کند.

برای درک مفهوم درختی مانند به تصویر زیر دقت کنید:

 

TT_tree
امروزه ، بیشتر محیط های گرافیکی یک برنامه برای نمایش فایل ها و دستکاری کردن آنها دارند. معمولا فایل سیستم به شکل زیر می باشد:

file_manager

مهم ترین تفاوت بین میراث سیستم عامل و سیستم عامل های (یونیکس مانند) مثل لینوکس این هست که ، لینوکس از قاعده حروف درایو ها استفاده نمیکند. به این دلیل که هر کدام از درایو ها به درخت های مختلفی .تقسیم می شوند. لینوکس همیشه یک درخت تنها دارد.زیرا دستگاه های مختلف ذخیره سازی ممکن است دسته های مختلفی از درخت ها را داشته باشد.

دستورpwd

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

دایرکتوری که شما در اون ایستاده اید . دایرکتوری جاری یا (Working directory) نامیده می شود.
برای پیدا کردن نام دایرکتوری جاری و مسیر آن از دستور pwd استفاده میکنیم.

زمانی که شما وارد یک سیستم عامل لینوکس می شوید . دایرکتوری جاری به صورت پیش فرض Home directory می باشد. اینجا دقیقا همان جایی است که شما فایل ها خودتون قرار میدید. در بیشتر سیستم ها دایرکتوری خانه شما به این شکل نوشته می شود.

دستور ls

برای لیست کردن فایل های دایکتوری جاری از دستور ls استفاده می کنیم.

در جلسه بعد در مورد ls بیشتر صحبت خواهیم کرد زیرا خیلی کار های جالب میشه باهاش انجام داد! اما الان باید درباره ی نام مسیر(Pathname) و دایرکتوری بیشتر صحبت کنم.
دستور cd

برای تغییر دایرکتوری(جایی که ایستاده بودید) از دستور cd استفاده کنید. برای این کار cd به همراه آدرس دایرکتوری(pathname) که می خواهید به آن بروید را وارد کنید.
اما Pathname(نام مسیر) چیست؟!
به مقصدی که شما برای رسیدن به آن شاخه های درخت را طی می کنید Pathname گفته می شود. Pathname می تونه از به دو روش وارد بشه:

۱-(مسیر مطلق)Absolute Pathnames

۲-(مسیر مربوط)  Relative Pathnames
یک مسیر مطلق با دایرکتوری روت (/) آغاز می شود و درخت را شاخه به شاخه دنبال می کند تا به مسیر دلخواه شما برسد. فرضا یک دایرکتوری روی سیستم شما وجود داره که بیشتر برنامه ها روش نصب هستند و مسیر دایرکتوری هم این هست:/usr/bin/
به این معناست که در دایرکتوری روت که با اولین علامت بک اسلش(/) در نام مسیر مشخص شده است(نکته ۱) ، یک دایرکتوری به نام usr وجود دارد که شامل bin می شود./usr/bin

نکته۱:((اولین بک اسلش در آدرس ها به معنای دایرکتوری روت در سیستم عامل لینوکس می باشد، تمام دایرکتوری های موجود در لینوکس در این دایرکتوری واقع شده اند.))

خب بیاید تو عمل امتحانش کنیم!

به همین راحتی توانستیم مسیر فایل را تغییر بدهیم!
همانطور که متوجه شدید یک absolute pathname از دایرکتوری روت شروع می شود و شما را به مسیر مورد نظرتان هدایت میکنید.(در واقع ، مهم نیست که شما در کدام دایرکتوری هستید، مقصد شما از دایرکتوری روت مشخص می شود)
اما Relative Pathname از دایرکتوری جاری شروع می شود (دایرکتوری که شما در آن واقع شده اید.)

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

حالا می خواهیم دایرکتوری جاری را به والدین آن تغییر بدیم. دایرکتوری که ما در اون واقع شدیم به این آدرس هست: usr/bin/
پس والد این دیرکتوری میشه: usr/
بیاید اول با استفاده از روش absoulut امتحانش کنیم.

حالا با روش Relative:

دو روش متفاوت اما یک نتیجه! کدام روش مناسب تر است؟! بستگی به موقعیتی دارد که شما می خواهید استفاده کنید. هر کدام که نیاز به تایپ کمتر کاراکتر دارد مناسب است!
همچنین می تونیم دوباره از مسیر خودمون را  usr/ به usr/bin/  با استفاده از دو روش تغییر بدیم.
Absolute:

حالا با Relative Pathname:

نکته مهمی که درباره ی دستور بالا باید بهش اشاره کنم این هست که می تونید (/.) را قبل از دستور خود نگذارید. (/.) به معنای دایرکتوری که شما در آن هستید است.

تفاوت زیادی وجود ندارد، البته استثنائی در این مورد هست که در آینده به بررسی اون می پردازیم.

بیشتر بدانیم!

اگر شما دستور cd را تنها و بدون مسیری که میخواهید بروید وارد کنید. مسیر شما به دایرکتوری home تغییر پیدا خواهد کرد!

یک میانبر دیگر مانند بالا، cd~user_name می باشد که شما را از دایرکتوری جاری به دایرکتوری home  سپس به یک یوزر مشخص منتقل خواهد کرد.

تایپ کردن -cd مسیر شما را به قبلی بر میگرداند.

 

موضوع:

دسته‌بندی نشده

ارسال نظر

ایمیل شما منتشر نخواهد شد. پر کردن ورودی ها الزامی است. *

*

نه − 4 =