يتم التشغيل بواسطة Blogger.

دورة تعلّم سطر الأوامر


Résultat de recherche d'images pour "linux terminal"

       في هذه التدوينة سوف نتعرف إلى بعض اﻷوامر الجميلة والمفيدة التي يمكننا تطبيقها في طرفية لينكس (Linux Terminal)، كما أن معرفتك بهذه اﻷوامر سوف يزيد من رصيدك المعرفيّ في خفايا التعامل مع نظام لينكس، ومستقبلا قد يفيدك في أساسيات إدارة لينكس.
تمتلك الطرفية قوة عظيمة، كما أن بعض مستخدمي لينكس مهووسون بعالم الطرفية، ولكي نسدّ رمق جوعهم فإننا سوف نسرد قائمة ببعض تلك اﻷوامر:

ملاحظات أوليّة

terminal_linux

اﻷمر cd


يستخدم اﻷمر cd للدخول إلى المجلّد المطلوب، أو الانتقال من مجلد إلى آخر.

على سبيل المثال، نكتب اﻷمر cd Videos للدخول مجلد الفيديوهات (Videos) المتواجد في Home Folder:
cdtwpo
** كما يستخدم اﻷمر cd منفردًا، للرجوع إلى المجلد اﻷولي فورًا، وهو مجلد المنزل Home Folder:
Screenshot - 16 تموز, 2015 - EEST 12:32:55

اﻷمر ls

يستخدم اﻷمر ls لعرض الملفات والمجلدات الموجودة في المجلد المطلوب؛ جرّب كتابة اﻷمر ls في الطرفية لديك وسوف يعرض لك قائمة بالملفات والمجلدات المتواجدة في مجلد المنزل (Home Folder)، وقد تتساءل لماذا قام بعرض اﻷشياء المتواجدة في مجلد المنزل تحديدا؟! الإجابة: وهي ﻷن مجلد المنزل هو الافتراضي الذي نراه عند فتح نافذة الطرفية، حيث تشير العلامة ~ الظاهرة في الطرفية إلى مجلد المنزل، وإذا أردت عرض محتويات مجلد آخر (مثلا مجلد التنزيلات) فاكتب اﻷمر cd Downloads وهكذا سيدخل إلى مجلد التنزيلات، ويمكنك من بعدها تطبيق اﻷمر ls لعرض الملفات والمجلدات المتواجدة بداخله.
ls_terminal
ls_down_ter
ولكن الفائدة الأكبر من ls تكمُن عندما نريد البحث عن ملف محدد، لنفرض جدلًا أن لديك مجلدًا مع ملفات كثيرة، وأنت تريد معرفة ما إذا كان الملف test.txt مثلا متواجدًا هناك، ولمعرفة ذلك نستخدم اﻷمر ls متبوعًا بـ | ثم  grep بهذا الشكل:
ls_grep_terminal
** تجدر الملاحظة إلى أن اﻷمر ls -a يستخدم لعرض محتويات المجلد المطلوب باﻹضافة إلى المجلدات والملفات المخفية (يُقصد بالملفات المخفية أنها الملفات التي لا يمكن رؤيتها إلا عند الضغط على مفتاح Ctrl+H في متصفح الملفات، كما أن الملفات المخفية تبدأ دائمًا بنقطة (.myfile).
ls -a
** كانت هذه مجرد معلومات أساسية حول اﻷمر ls وإذا أردت معرفة المزيد، فقط اكتب اﻷمر  man ls في الطرفية وهو سوف يقوم بسرد معلومات مفصّلة حول ذلك اﻷمر، وليس ذلك فحسب، بل إنه يتناول بعض اﻷمثلة عليه.
man ls

اﻷمر pwd

يستخدم اﻷمر pwd لعرض مسار المجلد الحاليّ (الذي أنت متواجد فيه حاليًا في الطرفية) :
pwd_terminal

اﻷمر cat

يستخدم اﻷمر cat لعرض محتويات الموجود بداخل ملف ما؛ على سبيل المثال: أنا لدي ملف باسم myfile.text وكتبت فيه مثلًا “Hello World!”، فإنني عندما أكتب اﻷمر cat في الطرفية متبوعًا باسم ذلك الملف النصي، فإنه سوف يعرض محتوى ذلك الملف وهو “Hello World!”.
cat_terminal

الأمر cp

يستخدم اﻷمر cp لنسخ الملفات والمجلدات، وهو أمر مفيد جدا في حالة كان لديك مجموعة من الملفات تبدأ بالاسم نفسه، أو نسخ مجموعة كبيرة من الملفات.
– مثال: اﻷمر اﻵتي يقوم بنسخ كافة الملفات التي تبدأ بالاسم same_name والمتواجدة في المسار المحدد وهو سطح المكتب الخاص بي، وهنا تكمن قوته في توفير الوقت:
cp same_name* /home/hossam/Desktop

اﻷمر chmod

يستخدم اﻷمر chomd لتغيير وإعطاء صلاحيات إلى ملف أو مجلد ما، ولعلك لاحظتَ أنه في عديد من اﻷحيان نستخدم هذا اﻷمر ﻹعطاء برنامج بعض الصلاحيات حتى نستطيع فتحه وتنصيبه.
على سبيل المثال: يستخدم اﻷمر اﻵتي، لجعل الملف myscript.py قابلًا للتنفيذ (executable) :
chmod +x myscript.py
واﻵن لتشغيل الملف نكتب اﻷمر التالي:
./myscript.py
وسنتحدث لاحقًا عن بعض اﻷمور المتعلقة بالصلاحيات في chomd.

اﻷمر wget

يستخدم اﻷمر wget لتحميل ملف من اﻹنترنت عبر الطرفية، على سبيل المثال:
wget DOWNLOAD_LINK
حيث نستبدل DOWNLOAD_LINK برابط التحميل الخاص بالملف الذي نريد تحميله.
إن wget أداة قوية، وللحصول على مزيد من المعلومات حول كيفية استئناف التنزيلات وغيرها من الخيارات راجع الموقع الرسمي.

اﻷمر uname

يستخدم اﻷمر uname لمعرفة معلومات النظام (Information System).
– اﻷمر التالي، يعرض إصدار النواة المثبت واسم التوزيعة خاصتك وإصدارها وغيرها من المعلومات:
uname -a
– اﻷمر التالي، يستخدم لعرض اسم النواة فقط بدون إصدارها:
uname -s
– اﻷمر التالي، يعرض إصدار النواة المثبت:
uname -r
– اﻷمر التالي يعرض اسم التوزيعة وإصدارها وبعض المعلومات اﻷخرى:
uname -v

الأمر cp

يستخدم اﻷمر cp لنسخ الملفات والمجلدات، وهو أمر مفيد جدا في حالة كان لديك مجموعة من الملفات تبدأ بالاسم نفسه، أو نسخ مجموعة كبيرة من الملفات.
– مثال: اﻷمر اﻵتي يقوم بنسخ كافة الملفات التي تبدأ بالاسم same_name والمتواجدة في المسار المحدد وهو سطح المكتب الخاص بي، وهنا تكمن قوته في توفير الوقت:
cp same_name* /home/hossam/Desktop

اﻷمر chmod

يستخدم اﻷمر chomd لتغيير وإعطاء صلاحيات إلى ملف أو مجلد ما، ولعلك لاحظتَ أنه في عديد من اﻷحيان نستخدم هذا اﻷمر ﻹعطاء برنامج بعض الصلاحيات حتى نستطيع فتحه وتنصيبه.
على سبيل المثال: يستخدم اﻷمر اﻵتي، لجعل الملف myscript.py قابلًا للتنفيذ (executable) :
chmod +x myscript.py
واﻵن لتشغيل الملف نكتب اﻷمر التالي:
./myscript.py
وسنتحدث لاحقًا عن بعض اﻷمور المتعلقة بالصلاحيات في chomd.

اﻷمر wget

يستخدم اﻷمر wget لتحميل ملف من اﻹنترنت عبر الطرفية، على سبيل المثال:
wget DOWNLOAD_LINK
حيث نستبدل DOWNLOAD_LINK برابط التحميل الخاص بالملف الذي نريد تحميله.
إن wget أداة قوية، وللحصول على مزيد من المعلومات حول كيفية استئناف التنزيلات وغيرها من الخيارات راجع الموقع الرسمي.

اﻷمر uname

يستخدم اﻷمر uname لمعرفة معلومات النظام (Information System).
– اﻷمر التالي، يعرض إصدار النواة المثبت واسم التوزيعة خاصتك وإصدارها وغيرها من المعلومات:
uname -a
– اﻷمر التالي، يستخدم لعرض اسم النواة فقط بدون إصدارها:
uname -s
– اﻷمر التالي، يعرض إصدار النواة المثبت:
uname -r
– اﻷمر التالي يعرض اسم التوزيعة وإصدارها وبعض المعلومات اﻷخرى:
uname -v

اﻷمر mkdir

يستخدم هذا اﻷمر ﻹنشاء دليل directory (أو مجلّد) جديد، وهو اختصار لـ make directory:
mkdir linuxcommands
*مع استبدال linuxcommands باسم المجلد الذي تريد.

اﻷمر rm

يستخدم هذا اﻷمر لحذف الملفات والمجلدات، فمثلًا ﻹزالة مجلّد مع المحتويات التي بداخله، نستخدم اﻷمر اﻵتي:
rm -r newdirectory

إنشاء اسم مستعار (اختصار) للأوامر

في بعض اﻷحيان نحتاج للقيام بعمل أسماء مستعارة أو اختصارات ﻷجل اﻷوامر التي نستعملها بكثرة عوضًا عن كتابة أشياء كثيرة وطويلة، فعلى سبيل المثال، لنفرض جدلًا أن اﻷمر الذي نريد اختصاره هو sudo apt-get install فإننا نقوم باﻵتي:
alias hello='sudo apt-get install'
حيث alias هو اﻷمر الذي نستخدمه لاختصار الأوامر.
hello هو الاسم المستعار البديل (أو الاختصار) لذلك اﻷمر الطويل sudo apt-get install، ويمكنك اختيار أيّ اسم آخر تريده.
وعليه فإننا يمكننا تثبيت برنامج بسرعة عن طريق الطرفية، ولنقل مثلًا أنه Gimp:
hello gimp
أعتقد أن الفكرة قد اتضحت، فقد تم التعويض عن hello بـ sudo apt-get install
ولكن المشكلة هي أن النظام لن يحفظ الاختصار وسوف ينساه بعد إغلاق اطرفية، فلذلك الحل هو إضافة الأمر إلى ملف .bashrc
أولا اكتب الأمر التالي
nano ~/.bashrc
في الملف النصي اكتب الأمر التالي:
alias hello='sudo apt-get install'
احفظ الملف النصي، وأخيرًا الصق الأمر:
source ~/.bashrc

اﻷمر echo

يستخدم هذا اﻷمر لعرض معلومات على الشاشة، وهو مفيد عندما تريد تمرير بعض النصوص إلى ملف ما، لاحظ اﻷمر التالي الذي يقوم بتمرير النصّ Test إلى الملف النصي file.txt:
echo 'Test' > file.txt

اﻷمر ps

يستخدم لعرض معلومات حول العمليات التي تحدث في نظامك، وذلك باستخدام اﻷمر التالي:
ps ax

إيجاد (أو البحث) عن العمليات الجارية

أنت تعرف مسبقًا الأمر ps الذي تناولناه في الجزء الثاني من السلسلة والذي يستخدم لعرض معلومات حول العمليات التي تحدث في نظامك:
ps aux
ولكنك بالمقابل لا تعرف شيئا حتى اللحظة عن الأمور الأكثر تقدما فيه، في الواقع إن الأمر أعلاه ليس مفيدًا عندما تريد البحث عن عملية محددة بعينها وليس سرد كل العمليات، وهنا يأتي دور الأمر grep ليندمج مع الأمر ps ويكسبه قوة إضافية:
ps aux | grep ipython
سوف تكون المخرجات على النحو التالي:
oltjano 8709 6.0 0.4 149684 18592 pts/0 Sl+ 13:53 0:00 /usr/bin/python /usr/local/bin/ipython
oltjano 8712 0.0 0.0 13600 944 pts/4 S+ 13:54 0:00 grep --color=auto ipython
وكما ترى، تم إعطائي معلومات بأن البرنامج ipython يعمل وهو متموضع في المسار /usr/local/bin مع الرقم التعريفي للعملية الجارية id وهو 8709
وهنالك حيلة لجعل الأمر يعطينا المعلومات المهمة ويتجاهل المعلومات غير المهمة، وذلك عبر وضع أول حرف بين قوسين [ ] وإحاطة اسم العملية بعلامتي تنصيص، وذلك باستخدام الأمر التالي:
ps aux | grep '[i]python'
سوف تكون المخرجات على النحو التالي:
oltjano 8709 6.0 0.4 149684 18592 pts/0 Sl+ 13:53 0:00 /usr/bin/python /usr/local/bin/ipython

قتل العمليات الجارية باستعمال pid

يشير الاختصار pid إلى الجملة “الرقم التعريفي للعملية”، تستطيع بسهولة قتل أي عملية إذا كنتَ تعلم الـ pid الخاص بها، ويمكن معرفته باستخدام الأمر السابق ps، وعموما بالأمر التالي قتلنا العملية التي تحمل الرقم التعريفي 8709 وهي ipython:
kill 8709
وبهذه الطريقة تم إنهاء العملية.

عوضًا عن ذلك، فالأمر التالي يستخرج الرقم التعريفي للعملية تلقائيًا ثم يبحث عنه بنفسه ويقتل العملية بنفسه:
kill $(ps aux | grep '[i]python' | awk '{print $2}')
وفيما يلي شرح كامل للأمر:
أولا يتم تشغيل الأمر ps ليقوم بسرد لائحة العمليات الجارية، ومن ثم يتم تحويل مخرجات الأمر ps باستخدام أنبوب pipe (والأنبوب في أوامر لينكس يكون بهذا الشكل | وهو شائع الاستخدام في طرفية لينكس، ويقوم هذا الأنبوب بنقل المخرجات إلى الأمر grep ثم يقوم grep المختص بالبحث بفرز النتائج وفلترتها اعتمادًا على سلسلة البحث الواردة في الأمر وفي حالتنا هذه ipython ومن ثم يتم تمرير مخرجات grep باستخدام الأنبوب مرة أخرى كمُدخلات إلى صالح الأمر awk الذي يعطينا الحقل الثاني من كل سطر، وفي هذا السياق فإن الحقل الثاني يحتوي على الـ pid الخاص بالعملية.

وعليه ستكون المخرجات على النحو التالي:
oltjano 8709 6.0 0.4 149684 18592 pts/0 Sl+ 13:53 0:00 /usr/bin/python /usr/local/bin/ipython

الأمر tar

يستخدم الأمر لتخزين واستخراج الملفات من شريط أو قرص أرشيفي (archive disk)، ولعلك لاحظتَ أن بعض الملفات تنتهي بتنسيق tar، بطبيعة الحال أكثر الحالات شيوعًا لاستعمال tar هو لاستخراج الأرشيفات والملفات المضغوطة، وذلك عبر الأمر التالي:
tar xvf example.tar
لنشرح بعض مكونات الأمر السابق:
الحرف v يشير إلى verbose وتأتي هذه الكلمة بمعنى “إسهاب” وهذا يعني أننا نقول “قم بالإسهاب في سرد تفاصيل عملية الاستخراج” وهو يعني أنه سوف يعرض لك ما يحدث أثناء عملية الاستخراج.
فيما يشير الحرف f إلى كلمة file وأمّا x فيعني extract (استخراج)
يمكنك أيضًا استعمال الأمر التالي لسرد محتويات الأرشيف دون استخراجه:
 tar tvf example.tar
فيما إذا كنتَ تريد إنشاء أرشيف جديد بتنسيق tar، ففي البداية تحتاج إلى وضع الملفات التي تريد أرشفتها معًا في مجلد واحد، بعد وضعها في مجلد، وبعد ذلك استخدم الأمر التالي:
tar cvf example.tar example/
يشير الحرف c إلى إلى إنشاء أرشيف (creating)، فيما يشير v إلى الإسهاب في سرد تفاصيل المخرجات، وأما f فهو يعني file.

تخفيض حجم الملفات باستخدام gzip

gzip أداة مفيدة جدًا لتقليل حجم الملفات خصوصا إذا كنتَ تريد مشاركتهم عبر الشبكة، وفيما يلي كيفية استعمال هذا الأمر…
لإنشاء ملف مضغوط بتنسيق gz استعمل الأمر التالي:
gzip test.txt
لفكّ الضغط عن الملف استعمل الأمر التالي:
gzip -d test.txt.gz
يشير الحرف -d إلى decompress أو uncompressed بمعنى استخراج الضغط.

إيقاف تشغيل الحاسوب من خلال الطرفية

إذا كنتَ تريد إيقاف التشغيل الآن استعمل الأمر:
shutdown -h now
إذا كنتَ تريد إيقاف التشغيل بعد 13 دقيقة (مثلًا) الصق الأمر التالي:
shutdown -h + 13
أما إذا كنت تريد إغلاق الحاسوب في بشكل أكثر تحديدًا (في الساعة الفلانية في الدقيقة الفلانية) فاستعمل الأمر التالي:
sudo shutdown -h 21:30
*سوف يتم إغلاق الجهاز في تمام الساعة (التاسعة والنصف 21:30)، ويمكنك تغييرها إلى ما تريد.

ليست هناك تعليقات:

إرسال تعليق

المقالات الاكثر مشاهدة

جميع الحقوق محفوظة ART Tech للمعلوميات

تصميم : أبوهلال بدر