لینوکسی شو : مدیریت فایل ها و فولدرها در اوبونتو

توی قسمت قبل یاد گرفتیم که چجوری رم و هارد سیستم لینوکسی خودمون رو مدیریت کنیم . https://virgool.io/fsf-linux/%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3%DB%8C-%D8%B4%D9%88-%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA-resource-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%A7%D9%88%D8%A8%D9%88%D9%86%D8%AA%D9%88-ffxjb8z3hqud توی این بخش ، میخوام یک سری دستوری رو باهاتون کار کنم که بتونید فایل ها و فولدرهاتون رو مدیریت کنین . خوب قبلا هم گفتم ، با محیط گرافیکی میشه این کارها رو کرد . اما هدف من اینه که توی محیط سرور و ترمینال باشیم . خوب به ترمینال برید . ما میخوایم که اول از همه بدونیم توی کدوم مسیر هستیم و باید الان از چه نقطه ای شروع کنیم . پس باید دستوری رو بلد باشم تا بهم بگه الان کجام . دستور زیر رو بزنید pwdحالا یک چیزی مثل زیر میبینید :/home/eagleکه یعنی من داخل مسیر home و پوشه eagle هستم . حالا میخوام ببینم که توی جایی که هستم چه فایل هایی هست . خوب دستور زیر رو بزنید :lsخروجی سیستم من اینه . بعضی چیزها با شما مشترکه :Desktop Downloads get-docker.sh Music Public TemplatesDocuments examples.desktop maxqserver Pictures snap Videosخوب الان میخوام ببینم هر کدوم از این فولدرها و فایل ها حجمشون چقدره :ls -lاین دستور به شما خروجی مثل زیر میده که حجم و این چیزارو نوشته :drwxr-xr-x 2 eagle eagle 4096 Sep 27 20:43 Desktopdrwxr-xr-x 2 eagle eagle 4096 Oct 5 20:22 Documentsdrwxr-xr-x 6 eagle eagle 4096 Oct 20 21:43 Downloads-rw-r--r-- 1 eagle eagle 8980 Sep 27 20:26 examples.desktop-rw-rw-r-- 1 eagle eagle 13847 Oct 23 20:30 get-docker.sh-rw-rw-r-- 1 eagle eagle 45 Oct 5 20:22 maxqserverdrwxr-xr-x 2 eagle eagle 4096 Sep 27 20:43 Musicdrwxr-xr-x 2 eagle eagle 4096 Nov 2 12:31 Picturesdrwxr-xr-x 2 eagle eagle 4096 Sep 27 20:43 Publicdrwxr-xr-x 6 eagle eagle 4096 Oct 11 18:12 snapdrwxr-xr-x 2 eagle eagle 4096 Sep 27 20:43 Templatesdrwxr-xr-x 2 eagle eagle 4096 Oct 14 22:41 Videos ستون سمت چپ به اصطلاح ، سطوح دسترسی یا permissions هست . ستون بعدی کاربری که دسترسی به این پوشه رو داره ستون بعدی گروه کاربری که دسترسی به این پوشه رو داره ستون بعدی حجم پوشه و فایلستون بعدی زمان ایجاد شدنآخری هم که اسم پوشه یا فایلحالا دستور زیر رو بزنید :llهمون نتیجه بالا رو میبینید . این دستور روی نسخه دستکتاپ تعریف شده و داخل نسخه سرور باید به صورت alias برای کاربرای غیر از root تعریف بشه .باحال بود . نه؟خوب حالا از این به بعد باحالتر هم میشه .میخوام برم داخل پوشه موزیک و یک فولدر به اسم HipHop درست کنم . برای اینکه بین پوشه ها جا به جا بشم باید از cd استفاده کنم که مخفف change directory هست . cd Musicخوب یه پوشه به اسم HipHop بسازیم . mkdir HipHopدستور mkdir یعنی make directory و کارش ایجاد پوشه هست . شاید اگر برنامه نویس باشید ، داخل زبان برنامه نویسی که کار میکنین این تابع رو دیده باشید . خوب حالا فرض کنید که یک فایل به اسم eminem.mp3 دارم که توی Downloads هست و میخوام کپی کنمش اینجا . cp ../Downloads/eminem.mp3 . دستور cp مخفف copy و کارش جا به جا کردن فایل ها و فولدراست . نقطه ای که آخر دستور گذاشتم یعنی "همینجایی که هستم". اما اگر جای دیگه بخوام کپی کنم باید بگم بندازش یه مسیر دیگه . پس دستور اینجوریه :‌cp sourceAddress DestionationAddressEX : cp ../Downloads/eminem.mp3 ../Desktop/مثال بالا فایل رو به پوشه Desktop میبره . نکته :‌ دو نقطه اسلش ، که قبل از مسیرها گذاشتم یعنی یک پوشه برگرد به عقب و از اونجا شروع کنم به آدرس حالا میخوام که کسی جز ‌کاربر root نتونه بره توی Music . باید دسترسی رو ببنم و درواقع مالک فولدر رو عوض کنم . تغییر مالک یا change owner با دستور زیر :sudo chown root:root . -R اول دستور با sudo شروع شده یعنی برای این کار باید کاربر مجوز دار باشید . مجوز sudo رو root میتونه بده . اما وقتی که اوبونتو نصب میکنین ، همیشه کاربر پیشفرض ، دسترسی sudo داره . اما باید ابتدای دستور نوشته بشه . بعد از chown سمت چپ دو نقطه اسم کاربر و سمت راست ، گروه کاربر رو مینویسیم . با یک فاصله ، مسیری که میخوایم این تغییر رو بدیم رو مینویسیم که من . گذاشتم یعنی "همینجا که هستم".آخرین flag با پرچمی که گذاشتم یعنی تمام فایل های داخل این فولدر هم به این دسترسی تغییر کنن . حالا هرکسی که بخواد توی این فایل کپی پیست کنه ، باید root باشه یا یوزر و پسوورد روت رو بلد باشه . خیلی باحاله . نه ؟دستور های زیادی هستن که مثل دستور cp , chown , cd و ... کار میکنن که من لیستشون رو مینویسم و شما با man میتونین کارشون رو یاد بگیرید . من یک مثال هم رو به روش میزنم . mv ( move or rename folders and files ) ex : mv eminem.mp3 eminem2.mp3 cat ( open a file content and see what is in it ) cat test.txt nano ( edit, create and open a file ) nano text.txt rm ( remove a file ) rm test.txt rm -rf ( remove a folder and files in it) rm -rf testFolder chmod (change moderator of a file or folder , it is like chown ) chmod 777 -R ../Downloadsدر آخر اگر مطلبم مفید بود یک فنجون قهوه مهمونم کن . حرف زیاد داریم بزنیم.