Linuxالتنقل في النظام
- مفهوم التنقل في لينكس
- معرفة أين تقف حالياً في لينكس
- الإنتقال من مجلد إلى آخر في لينكس
- عرض الملفات و المجلدات في لينكس
مفهوم التنقل في لينكس
التنقل في النظام يقصد به الإنتقال من مجلد إلى آخر عن طريق موجه الأوامر.
إفتراضياً، بعد قيام المستخدم بتسجيل دخوله في نظام لينكس فإنه يتم وضعه في المجلد الخاص به.
Linux Terminal
root
هو إسم المستخدم الذي تم تسجيل الدخول بواسطته.- الرمز
~
معناه أن المستخدم يقف حالياً في المجلد الخاص به.
المجلد الخاص بالمستخدم root
مساره /root
.
أما جميع المستخدمين الآخرين فيكون لهم مجلد خاص بإسمهم تحت المجلد /home
.
المجلد الذي ينشئه نظام لينكس و الذي يتم وضعه فيه حينما يقوم بتسجيله دخوله يقال له Home Directory بالنسبة له.
معرفة أين تقف حالياً في لينكس
قبل تنفيذ أي أمر في لينكس، يجب أن تعرف في أي مجلد تقف حالياً حتى لا تقوم بتنفيذ الأوامر في المكان الخطأ.
لمعرفة المسار الذي تقف فيه حالياً يمكنك كتابة الأمر pwd
كما يلي.
Linux Terminal
/root
ظهر لنا أننا موجودين في المجلد /root
لأن هذا المجلد الإفتراضي للمستخدم root
.
إسم الأمر pwd
هو اختصار لجملة Print Working Directory و التي تعني إطبع المجلد الذي أعمل فيه.
الإنتقال من مجلد إلى آخر في لينكس
للإنتقال من مجلد إلى آخر يمكنك استخدام الأمر cd
و من بعدها تضع مسار المجلد الذي تريد الإنتقال إليه.
فيما يلي الرموز التي يمكنك استخدامها مع هذا الأمر.
الرمز و استخدامه | |
---|---|
cd |
عند استخدام هذا الأمر بدون ذكر إسم المسار المراد الإنتقال إليه بعدها فإنه ينقل المستخدم للمجلد الخاص به. |
cd ~ |
ينقل المستخدم للمجلد الخاص به. |
cd - |
يعيد المستخدم لآخر مجلد كان موجود فيه قبل المجلد الحالي. |
cd .. |
يرجع المستخدم للمجلد الأب للمجلد الحالي. |
cd / |
ينقل المستخدم للمجلد / الذي يعتبر أعلى مجلد في النظام. |
إسم الأمر cd
هو اختصار لجملة Change Directory و التي تعني غيّر المجلد.
أساليب تحديد المسارات
تحديد المسار المراد الإنتقال إليه يمكن أن يتم بأسلوبين:
- وضع مسار نسبي ( Relative Path ) و معنى ذلك أن مساره يوضع نسبةً للمجلد الذي يقف فيه المستخدم حالياً.
- وضع مسار كامل ( Absolute Path ) و معنى ذلك أن مساره يوضع كما هو بالنسبة لأعلى مجلد في النظام و الذي هو
/
.
أمثلة متتابعة
في الأمثلة التالية سنتنقل بين المجلدات التالية الموجودة في نظام لينكس.
/ ├── root ├── etc ├── home
1- في المثال التالي قمنا بالإنتقال من المجلد الخاص بالمستخدم root
إلى المجلد /
.
Linux Terminal
root@fedora:/$
2- في المثال التالي قمنا بالإنتقال من المجلد /
إلى المجلد /etc
.
Linux Terminal
root@fedora:/etc$
3- في المثال التالي قمنا بالخروج من المجلد /etc
إلى المجلد الأب له مما يعني أننا عدنا إلى المجلد /
.
Linux Terminal
root@fedora:/$
4- في المثال التالي قمنا بالإنتقال إلى المجلد الخاص بالمستخدم، أي قمنا بالإنتقال من المجلد /
إلى المجلد /root
.
Linux Terminal
root@fedora:~$
5- في المثال التالي قمنا بالإنتقال من المجلد الخاص بالمستخدم إلى المجلد /home
.
Linux Terminal
root@fedora:/home$
6- في المثال التالي قمنا بالعودة إلى المجلد الأخير الذي كنا فيه، أي قمنا بالإنتقال بشكل مباشر من المجلد /home
إلى المجلد /root
.
Linux Terminal
root@fedora:~$
عرض الملفات و المجلدات في لينكس
يمكنك استخدام الأمر ls
لعرض أسماء المجلدات و الملفات الموجودة بشكل مباشر في مجلد محدد.
فيما يلي الباراميترات التي يمكنك استخدامها مع هذا الأمر.
الباراميتر و استخدامه | |
---|---|
ls |
يعرض جميع أسماء المجلدات و الملفات الغير مخفية في المجلد. |
ls -a |
يعرض جميع أسماء المجلدات و الملفات الموجودة بشكل مباشر في المجلد حتى لو كانت مخفية. |
ls -l |
يعرض عدد المجلدات و الملفات الموجودة في المجلد و من ثم يعرض خصائص كل واحد فيهم على سطر منفرد. |
ls -ld |
يعرض خصائص المجلد الحالي فقط. |
ls -F |
يعرض جميع أسماء المجلدات و الملفات الموجودة في المجلد مع إضافة رمز في آخرها يمكن من خلاله معرفة نوعها.
|
في حال كنت تقف في مجلد محدد و تريد عرض محتواه، يمكنك كتابة الأمر ls
بدون الحاجة لذكر مساره.
في المثال التالي إفترضنا أننا نقف حالياً في المجلد /
و نريد عرض محتواه.
Linux Terminal
bin boot dev efi etc home lib lib64 mnt opt proc run sbin srv swap sys
في حال كنت تريد عرض محتوى مجلد محدد بدون الدخول إليه، سيكون عليك ذكر مساره فقط في نهاية الأمر ls
.
في المثال التالي سنفترض أننا نقف حالياً في المجلد /root
و نريد عرض محتوى المجلد /
.
Linux Terminal
bin boot dev efi etc home lib lib64 mnt opt proc run sbin srv swap sys
في المثال التالي قمنا بعرض المجلدات و الملفات الموجودة في المجلد /
مع إظهار الرموز التي تشير لأنواعها.
Linux Terminal
bin@ boot/ dev/ efi/ etc/ home/ lib@ lib64@ mnt/ opt/ proc/ run/ sbin@ srv/ swap/ sys/
في المثال التالي قمنا بعرض عدد و أسماء المجلدات و الملفات الموجودة في المجلد /
مع إظهار خصائصها.
Linux Terminal
total 20
drwxr-xr-x 1 root root 128 Jun 1 12:05 boot
drwxr-xr-x 19 root root 3740 Sep 3 06:55 dev
drwxr-xr-x 2 root root 0 Sep 3 06:55 efi
drwxr-xr-x 1 root root 1806 Sep 3 06:55 etc
drwxr-xr-x 1 root root 0 Aug 19 04:10 home
lrwxrwxrwx 1 root root 7 Apr 7 18:02 lib -> usr/lib
lrwxrwxrwx 1 root root 7 Apr 7 18:02 lib64 -> usr/lib
drwxr-xr-x 1 root root 0 Apr 7 18:02 mnt
drwxr-xr-x 1 root root 50 Aug 23 06:54 opt
dr-xr-xr-x 164 root root 0 Sep 3 06:55 proc
drwxr-x--- 1 root root 62 Sep 3 03:45 root
drwxr-xr-x 17 root root 460 Sep 3 06:55 run
rwxrwxrwx 1 root root 7 Apr 7 18:02 sbin -> usr/bin
drwxr-xr-x 1 root root 14 Jun 1 12:04 srv
drwx------ 1 root root 16 Jun 1 12:05 swap
dr-xr-xr-x 13 root root 0 Sep 3 06:55 sys
drwxrwxrwt 10 root root 220 Sep 3 06:55 tmp
drwxr-xr-x 1 root root 70 Sep 3 03:42 usr
drwxr-xr-x 1 root root 116 Sep 3 06:55 var
في كل سطر تظهر المعلومات الخاصة بالملف أو المجلد كما يلي: الأذونات ( Permissions ) الخاصة به، يليها إسم المستخدم التابع له و إسم المجموعة التي يتبع لها المستخدم، يليها تاريخ الإنشاء، يليها إسم المجلد أو الملف، و في حال كان الملف هو رابط لمجلد أو ملف آخر فإنه يشار إليه في النهاية.
لا تقلق إذا لم تفهم ما تعنيه هذه المعلومات الآن لأنك ستفهم معناها بالتفصيل في دروس لاحقة.
في المثال التالي قمنا بعرض جميع المعلومات المتاحة حول المجلد /
فقط بدون عرض معلومات ما يحتويه.
Linux Terminal
drwxr-xr-x 1 root root 136 Jun 1 12:05