English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
نعلم أن بنية مجلدات Linux هي بنية شجرة، أرقام الأعلى هي مجلد الجذر /.
يمكن إضافة المجلدات الأخرى إلى الشجرة من خلال التثبيت، ويمكن إزالتها عن طريق إزالة التثبيت.
قبل البدء في هذا الدليل، يجب أن نعرف ما هو المسار المطلق والمسار المطلق.
المسار المطلق:
كتابة المسار، تبدأ بـ / من الجذر، على سبيل المثال: /usr/share/doc هذا هو مجلد.
المسار المطلق:
كتابة المسار، ليست بداية بـ /، على سبيل المثال، من /usr/share/doc إلى /usr/share/man، يمكن كتابته كالتالي: cd ../man هذا هو كتابة المسار المطلق.
الآن سنرى بعض الأوامر الشائعة لتعامل المجلدات:
ls (الاسم الكامل بالإنجليزية: list files): يعرض مجلدات واسماء الملفات
cd (الاسم الكامل: change directory): تغيير الدليل
pwd (الاسم الكامل: print work directory): عرض الدليل الحالي
mkdir (الاسم الكامل: make directory): إنشاء دليل جديد
rmdir (الاسم الكامل: remove directory): حذف دليل فارغ
cp (الاسم الكامل: copy file): نسخ الملف أو الدليل
rm (الاسم الكامل: remove): حذف الملف أو الدليل
mv (الاسم الكامل: move file): نقل الملف والدليل أو تغيير اسم الملف والدليل
يمكنك استخدام man [الأمر] للتحقق من وثائق الأوامر المختلفة، مثل: man cp.
في نظام Linux، يمكن أن يكون الأمر ls هو الأكثر استخدامه.
الجملة:
[root@www ~]# ls [-aAdfFhilnrRSt] اسم الدليل [root@www ~]# ls [--color={never,auto,always}] اسم الدليل [root@www ~]# ls [--full-time] اسم الدليل
خيارات والمعلمات:
-a : جميع الملفات، بما في ذلك الملفات المخفية (الملفات التي تبدأ بـ .) (استخدام شائع)
-d : يتم عرض الدليل نفسه فقط، وليس بيانات ملفات الدليل (استخدام شائع)
-l : عرض سلسلة البيانات الطويلة، بما في ذلك خصائص الملف والصلاحيات وما إلى ذلك (استخدام شائع)
تسجيل جميع الملفات في دليل المنزل (بما في ذلك الخصائص والملفات المخفية)
[root@www ~]# ls -al ~
cd هو اختصار لـ Change Directory، وهو الأمر الذي يستخدم لتغيير دليل العمل.
الجملة:
cd [المسار النسبي أو المسار المطلق]
# يتم إنشاء دليل w3codebox باستخدام الأمر mkdir. [root@www ~]# mkdir w3codebox # يستخدم المسار المطلق للانتقال إلى دليل w3codebox. [root@www ~]# cd /root/w3codebox/ # يستخدم المسار النسبي للانتقال إلى دليل w3codebox. [root@www ~]# cd ./w3codebox/ # يعني العودة إلى دليل المنزل الخاص بك، أي دليل /root هذا. [root@www w3codebox]# cd ~ # يعني الذهاب إلى الدليل الأعلى الحالي، أي دليل /root الأعلى. [root@www ~]# cd ..
بعد بعض العمليات يجب أن تفهموا أوامر cd بشكل جيد.
pwd هو إظهار مسار العمل الحالي الاختصار، وهو الأمر الذي يعرض الدليل الحالي.
[root@www ~]# pwd -P
خيارات والمعلمات:
-P : يعرض المسار الفعلي، وليس المسار باستخدام رابط (link)
مثال: يظهر الدليل الحالي فقط:
[root@www ~]# pwd /root <== تم عرض الدليل
مثال: يظهر الدليل الحقيقي للعمل، وليس اسم دليل الملف المتصل نفسه.
[root@www ~]# cd /var/mail <== انتبه، /var/mail هو ملف متصل [root@www mail]# pwd /var/mail <== قائمة بالدليل الحالي [root@www mail]# pwd -P /var/spool/mail <== ما الذي يحدث؟ هل تم إضافة -P؟ هناك فرق كبير! [root@www mail]# ls -ld /var/mail lrwxrwxrwx 1 root root 10 Sep 4 17:54 /var/mail -> spool/mail # عند الوصول إلى هذا المكان يجب أن تعرف السبب؟ لأن /var/mail هو ملف متصل، متصل إلى /var/spool/mail # لذا، عند إضافة خيار pwd -P، فإنه لا يعرض بيانات الملف المتصلة، بل يعرض المسار الكامل الصحيح!
إذا كنت ترغب في إنشاء دليل جديد، فاستخدم mkdir (إنشاء دليل)!
الجملة:
mkdir [-mp] اسم الدليل
خيارات والمعلمات:
-m : تكوين صلاحيات الملفات الوثائقية! أعد تكوينها مباشرة، لا تحتاج إلى النظر في لون الصلاحيات الافتراضية (umask)!
-p : يساعدك في إنشاء الدليل المطلوب (بما في ذلك الدليل الأعلى) بشكل متكرر!
مثال: حاول إنشاء عدة دليل جديدة تحت /tmp لرؤية النتائج:
[root@www ~]# cd /tmp [root@www tmp]# mkdir test <== أنشئ دليل جديد يُدعى test [root@www tmp]# mkdir test1/test2/test3/test4 mkdir: cannot create directory `test1/test2/test3/test4': No such file or directory <== لا يوجد ملف أو دليل هذا! [root@www tmp]# mkdir -p test1/test2/test3/test4
بإضافة هذا الخيار -p، يمكنه إنشاء مستويات متعددة من المجلدات تلقائيًا!
مثال: إنشاء صلاحيات rwx--x--x المجلد.
[root@www tmp]# mkdir -m 711 test2 [root@www tmp]# ls -l drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2
جزء الصلاحيات أعلاه، إذا لم يتم إضافة -m لتكوين الخصائص بشكل قسري، سيستخدم النظام الخصائص الافتراضية.
إذا استخدمنا -m، مثل المثال أعلاه، أعطنا -m 711 لمنح المجلد drwx--x--x صلاحيات جديدة.
الجملة:
rmdir [-p] اسم المجلد
خيارات والمعلمات:
-p :حتى المجلدات الفارغة العليا
حذف مجلد w3codebox
[root@www tmp]# rmdir w3codebox/
حذف المجلد الذي تم إنشاؤه في مثال mkdir (/tmp)
[root@www tmp]# ls -l <== انظروا، كم مجلد موجود؟ drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2 [root@www tmp]# rmdir test <== يمكنك حذفه مباشرة، لا مشكلة! [root@www tmp]# rmdir test1 <== لأن هناك محتوى، لذا لا يمكن حذفه! rmdir: `test1`: المجلد غير فارغ [root@www tmp]# rmdir -p test1/test2/test3/test4 [root@www tmp]# ls -l <== انظروا، test و test1 اختفيا من الخروج! drwx--x--x 2 root root 4096 Jul 18 12:54 test2
باستخدام خيار -p، يمكنك حذف test1/test2/test3/test4 مرة واحدة.
لكن يجب ملاحظة أن rmdir يمكنه حذف المجلدات الفارغة فقط، يمكنك استخدام الأمر rm لحذف المجلدات غير الفارغة.
cp هو نسخ الملفات والمجلدات.
النحو:
[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination) [root@www ~]# cp [options] source1 source2 source3 ... directory
خيارات والمعلمات:
-a:相当于 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
-d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
-l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-r:递归持续复制,用於目录的复制行为;(常用)
-s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
-u:若 destination 比 source 旧才升级 destination !
用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc
[root@www ~]# cp ~/.bashrc /tmp/bashrc [root@www ~]# cp -i ~/.bashrc /tmp/bashrc cp: overwrite `/tmp/bashrc'? n <==n不覆盖,y为覆盖
الجملة:
rm [-fir] 文件或目录
خيارات والمعلمات:
-f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
-i :互动模式,在删除前会询问使用者是否动作
-r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
将刚刚在 cp 的示例中创建的 bashrc 删除掉!
[root@www tmp]# rm -i bashrc rm: remove regular file `bashrc'? y
如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
الجملة:
[root@www ~]# mv [-fiu] source destination [root@www ~]# mv [خيارات] source1 source2 source3 ... directory
خيارات والمعلمات:
-f : force يعني القوة، إذا كان الملف الهدف موجودًا، فإنه يتم التغطية مباشرة دون السؤال؛
-i : إذا كان الملف الهدف (destination) موجودًا، فإنه يتم السؤال عما إذا كان بالإمكان التغطية!
-u : إذا كان الملف الهدف موجودًا، وكان المصدر أكثر حداثة، فإنه يتم تحديثه (update)
تكرار ملف، إنشاء دليل، تحريك الملف إلى الدليل
[root@www ~]# cd /tmp [root@www ~]# cp ~/.bashrc bashrc [root@www tmp]# mkdir mvtest [root@www tmp]# mv bashrc mvtest
لتحريك ملف إلى دليل معين، قم بذلك!
أسمِّر اسم الدليل الموجود حديثًا إلى mvtest2
[root@www tmp]# mv mvtest mvtest2
استخدم الأوامر التالية في نظام Linux لعرض محتويات الملفات:
cat يبدأ عرض محتويات الملف من السطر الأول
tac يبدأ عرض السطور من السطر الأخير، يمكن رؤية أن tac هي العكس من cat!
nl يعرض السطور ويقوم أيضًا بطباعة الرقم التسلسلي للسطر!
more يعرض محتويات الملف صفحة بعد صفحة
less يشبه more، ولكن ما هو أفضل في more هو أنه يمكنه التصفح للوراء!
head لرؤية الأعمدة الأولى فقط
tail لرؤية الأعمدة الأخيرة فقط
يمكنك استخدام man [الأمر]للتحقق من وثائق الأوامر المختلفة، مثل: man cp.
يبدأ عرض محتويات الملف من السطر الأول
الجملة:
cat [-AbEnTv]
خيارات والمعلمات:
-A : يعادل خيار -vET المدمج، يمكن عرض بعض الرموز الخاصة وليس الفارغة فقط;
-b : عرض الرقم التسلسلي للسطر، فقط للسطور غير الفارغة، لا يتم عرض الرقم التسلسلي للسطور الفارغة!
-E : يعرض نهاية السطر المقطوع $;
-n : طباعة الرقم التسلسلي للسطر، بما في ذلك السطور الفارغة، يختلف عن خيار -b;
-T : يعرض مفتاح tab كـ ^I;
-v : عرض بعض الرموز الخاصة التي لا يمكن رؤيتها
تحقق من محتويات ملف /etc/issue هذا:
[root@www ~]# cat /etc/issue CentOS release 6.4 (Final) Kernel \r on an \m
tac و cat أوامر عكسية تمامًا، يبدأ عرض محتويات الملف من السطر الأخير، يمكن رؤية أن tac هي العكس من cat! مثل:
[root@www ~]# tac /etc/issue Kernel \r on an \m CentOS release 6.4 (Final)
Display line numbers
الجملة:
nl [-bnw] file
خيارات والمعلمات:
-b :Specifies the method of line numbers, mainly two kinds:
-b a :Regardless of whether it is a blank line, line numbers are also displayed (similar to cat -n);
-b t :If there are blank lines, do not display line numbers for the blank line (default value);
-n :The method of displaying line numbers, mainly three kinds:
-n ln :The line number is displayed at the leftmost side of the screen;
-n rn :The line number is displayed at the far right of the column, and 0 is not added;
-n rz :The line number is displayed at the far right of the column, and 0 is added;
-w :The number of digits occupied by the line number column.
Example 1: Use nl to list the content of /etc/issue
[root@www ~]# nl /etc/issue 1 CentOS release 6.4 (Final) 2 Kernel \r on an \m
Page by page scrolling
[root@www ~]# more /etc/man_db.config # # Generated automatically from man.conf.in by the # configure script. # # man.conf from man-1.6d ....(omitted).... --More--(28%) <== Pay attention to this line! Your cursor will also wait here for your command
During the execution of the more program, you have several keys you can press:
Space key (space):Represents scrolling down one page;
Enter :Represents scrolling down 'one line';
/string :Represents searching for the keyword 'string' in the displayed content below;
:f :Immediately displays the filename and the current line number;
q :Represents leaving more immediately, without displaying the file content anymore.
b or [ctrl]-b :Represents scrolling back a page, but this action is only useful for files, not for pipelines.
Page by page scrolling, the following example output the contents of the /etc/man.config file:
[root@www ~]# less /etc/man.config # # Generated automatically from man.conf.in by the # configure script. # # man.conf from man-1.6d ....(omitted).... : <== Here you can wait for your command input!
less runtime commands that can be entered include:
الزر الفارغ : نحو الأسفل لصفحة واحدة
[pagedown] : نحو الأسفل لصفحة واحدة
[pageup] : نحو الأعلى لصفحة واحدة
/كلمة : البحث هبوطيًا عن الكلمة المحددة
?كلمة : البحث صعوديًا عن الكلمة المحددة
n : تكرار البحث السابق (يتعلق ب / أو ?)
N : تكرار البحث السابق بشكل معكوس (يتعلق ب / أو ?)
q : مغادرة برنامج less هذا
استخراج الأعمدة الأولى من الملف
الجملة:
head [-n number] ملف
خيارات والمعلمات:
-n : يتبعه عدد، يعني عرض عدد الأسراع
[root@www ~]# head /etc/man.config
في الحالة الافتراضية، يتم عرض العشرين سطرًا الأولى! إذا كنت ترغب في عرض العشرين سطرًا، فعليك القيام بذلك كما يلي:
[root@www ~]# head -n 20 /etc/man.config
استخراج الأعمدة الأخيرة من الملف
الجملة:
tail [-n number] ملف
خيارات والمعلمات:
-n : يتبعه عدد، يعني عرض عدد الأسراع
-f : يعني مراقبة اسم الملف الذي يليه، ويتوقف tail عن المراقبة عند ضغط [ctrl]-c
[root@www ~]# tail /etc/man.config # في الحالة الافتراضية، يتم عرض العشرين سطرًا الأخيرة! إذا كنت ترغب في عرض العشرين سطرًا، فعليك القيام بذلك كما يلي: [root@www ~]# tail -n 20 /etc/man.config