تُعد أنظمة التشغيل المبنية على نواة لينكس من أكثر الأنظمة انتشاراً على الخوادم والحواسيب العملاقة والأنظمة المدمجة، إذ تتسم بدرجة عالية من الاستقرار والمرونة والأمان. ومع هذا الانتشار والاعتماد الكبير على لينكس في تشغيل الخدمات الحساسة وقواعد البيانات الضخمة ومراكز البيانات، تبرز أهمية فهم الأوامر التي تُستخدم للتفاعل مع النظام بشكل نصي من خلال واجهة الطرفية (Terminal)، إذ تساعد هذه الأوامر المستخدمين والمسؤولين عن الأنظمة (System Administrators) والمطورين على إدارة النظام ومكونات البيئة البرمجية بسهولة وكفاءة عالية.
بخلاف أنظمة التشغيل ذات الواجهات الرسومية الكثيفة التي تعتمد على النوافذ والقوائم، فإنّ لينكس يوفر للمستخدمين قوة تحكم لا مثيل لها عبر واجهة سطر الأوامر. باستخدام هذه الأوامر، يمكن للمستخدمين تنفيذ المهام بسرعة ودقة من خلال كتابة تعليمة واحدة أو عدة تعليمات تسلسلية ضمن سكربت. هذا الأسلوب النصي له مزايا عدّة، منها عدم الحاجة لتدخل الماوس وعناصر رسومية، والقدرة على الأتمتة وإجراء العمليات الدورية والمتكررة بسهولة، إضافة إلى التفاعل مع الخوادم عن بعد عبر بروتوكولات مثل SSH.
-
إدارة جنو/لينكس: أمان وأداء متقدم04/01/2024
-
تأمين خدمات Red Hat: SELinux وأدوات الأمان04/01/2024
إنّ تعلم أوامر لينكس ليس مجرد مهارة تقنية ثانوية، بل هو ركيزة أساسية لكل من يعمل في مجال تقنية المعلومات تقريباً. فمن خلال معرفة الأوامر الأساسية والمتقدمة، يمكن للمستخدم تحليل أداء النظام، وتحسينه، وإدارة الملفات والمستخدمين والصلاحيات، والتحكم بالشبكات والخدمات، فضلاً عن استكشاف الأخطاء وإصلاحها بطرق فعالة. كما أنّ تعلم الأوامر النصية يفتح آفاقاً أمام إنشاء سكربتات لتحسين سير العمل، وتنفيذ عمليات معقدة بخطوات آلية، مما ينعكس إيجابياً على إنتاجية فرق العمل وعلى جودة الخدمة المقدمة.
من خلال هذا المقال الطويل والمفصل، سيتم الغوص في عمق عالم أوامر لينكس. سنبدأ بتغطية البنية الأساسية لنظام الملفات، مروراً بأهم الأوامر للتنقل وإدارة الملفات، ووصولاً إلى الأوامر المتقدمة لتحليل الأداء وضبط إعدادات الشبكة والأمان. كما سيتم تغطية أساليب التعامل مع حزم البرمجيات، وأوامر التحكم بالخدمات، وإدارة السجلات، وإنشاء السكربتات النصية، والاستفادة من أدوات قوية مثل awk
وsed
وgrep
وfind
. سيتم أيضاً تقديم جداول توضيحية لبعض الأوامر الشائعة ووظائفها، والإشارة إلى بعض المصادر والمراجع التي يمكن الرجوع إليها لمزيد من التعمق.
في نهاية المطاف، سيكتسب القارئ قاعدة معرفية صلبة تمكنه من التعامل مع أنظمة لينكس بثقة، وفهم آليات تشغيلها، واستخدام الأوامر النصية لتحقيق أقصى استفادة ممكنة من هذا النظام القوي.
الجزء الأول: فهم بنية نظام الملفات في لينكس
الهيكل العام لنظام الملفات
لفهم أوامر إدارة الملفات والتنقل في لينكس، لا بد من الإحاطة ببنية نظام الملفات (Filesystem Hierarchy Standard – FHS). يختلف نظام الملفات في لينكس عن الأنظمة الأخرى، إذ لا يوجد تقسيم إلى أقراص مثل C: وD: في ويندوز، بل يبدأ الهيكل الجذري من المجلد /
، حيث تتفرع عنه جميع الأدلة الفرعية. يشمل ذلك /bin
للأوامر التنفيذية الأساسية، و/etc
لملفات الإعدادات، و/home
لملفات المستخدمين، و/var
لملفات السجلات وغيرها.
هذا الهيكل الموحد يجعل من السهل إدارة ملفات النظام، وتسهيل عمليات النسخ الاحتياطي والاستعادة. إضافة إلى ذلك، يمكن ربط أنظمة ملفات خارجية أو أقراص صلبة أخرى ضمن أي نقطة في الشجرة الأساسية، مما يتيح مرونة عالية في إدارة التخزين.
بعض الأدلة الأساسية واستخداماتها
/
: الجذر الذي تبدأ منه جميع المجلدات./bin
: يحتوي على الأوامر التنفيذية الأساسية المتاحة لجميع المستخدمين./sbin
: يشبه/bin
لكنه يحتوي على أوامر خاصة بإدارة النظام والمشرفين (root)./etc
: ملفات الإعدادات والتكوين الخاصة بالنظام والخدمات./home
: أدلة المستخدمين العاديين، حيث يملك كل مستخدم دليل خاص به./usr
: يحتوي على مجموعة كبيرة من البرامج والمكتبات والوثائق./var
: ملفات متغيرة مثل سجلات النظام وملفات الطباعة المؤقتة./tmp
: ملفات مؤقتة يتم حذفها دورياً أو عند إعادة تشغيل النظام./lib
: مكتبات النظام الضرورية لتشغيل الأوامر والبرامج./dev
: يحتوي على ملفات الأجهزة التي تمثل التعريفات والأقراص الصلبة والأجهزة الطرفية.
الجزء الثاني: أوامر التنقل وإدارة الملفات
أوامر استكشاف النظام والتنقل بين المجلدات
من أهم الأوامر التي يجب على أي مستخدم لينكس معرفتها هي الأوامر الخاصة بالتنقل بين المجلدات. يُعد الأمر pwd
(Print Working Directory) أحد أبسط الأوامر، إذ يعرض المسار الكامل للدليل الحالي. عند بدء جلسة طرفية جديدة، يجد المستخدم نفسه عادة في مجلد منزله /home/username
.
للتنقل بين المجلدات، يتم استخدام الأمر cd
(Change Directory). على سبيل المثال، للتنقل إلى مجلد /etc
يكفي تنفيذ:
cd /etc
أما للعودة إلى المجلد السابق، فيمكن استخدام:
cd -
وللعودة إلى مجلد المنزل:
cd ~
كما يمكن استخدام المسارات النسبية، مثل الانتقال لمجلد فرعي:
cd documents
في حال كان هذا المجلد موجوداً في الدليل الحالي.
أوامر عرض محتوى المجلدات
لعرض محتوى المجلدات، يُستخدم الأمر ls
. يمكن للأمر ls
عرض الملفات والمجلدات في الدليل الحالي، أو في أي دليل آخر يُحدد له. ومن الخيارات الشائعة للأمر ls
:
ls -l
: يعرض المحتوى بتفاصيل إضافية، مثل الصلاحيات والمالك والحجم.ls -a
: يعرض الملفات المخفية، والتي تبدأ بنقطة (.) في أسماءها.ls -lh
: يعرض الأحجام بصيغة قابلة للقراءة البشرية (مثل KB, MB).
على سبيل المثال:
ls -lha /etc
سيعرض الملفات والمجلدات في /etc
مع تفاصيل شاملة.
أوامر إنشاء وحذف الملفات والمجلدات
لإنشاء ملفات فارغة، يستخدم الأمر touch
:
touch newfile.txt
هذا الأمر سينشئ ملفاً فارغاً باسم newfile.txt
إن لم يكن موجوداً، أو يحدث تاريخ آخر تعديل في حال كان الملف موجوداً.
لإنشاء مجلد جديد، يستخدم الأمر mkdir
:
mkdir newdir
لحذف ملف، يستخدم الأمر rm
:
rm oldfile.txt
لحذف مجلد فارغ، يستخدم الأمر rmdir
:
rmdir olddir
وفي حال كان المجلد يحتوي على ملفات ومجلدات فرعية، يمكن استخدام:
rm -r olddir
هذه العملية لا رجعة فيها، لذا يجب الحذر عند حذف المجلدات recursively.
أوامر نسخ ونقل وإعادة تسمية الملفات
يستخدم الأمر cp
لنسخ الملفات والمجلدات:
cp source.txt destination.txt
لنسخ مجلد كامل:
cp -r sourcedir destinationdir
الأمر mv
يستخدم لنقل أو إعادة تسمية الملفات:
mv oldname.txt newname.txt
mv file.txt /path/to/new/location/
عند استخدام mv
مع تحديد اسم جديد في نفس المسار، سيتم إعادة تسمية الملف، وعند تحديد مسار آخر، سيتم نقله إلى ذلك الموقع.
الجزء الثالث: التعامل مع الأذونات والصلاحيات
مفهوم الصلاحيات في لينكس
يعتمد لينكس على نظام أذونات (Permissions) يقوم بتحديد من يمكنه قراءة أو تعديل أو تنفيذ ملف أو مجلد. تقسم الصلاحيات لثلاث فئات:
- المالك (Owner)
- المجموعة (Group)
- الآخرون (Others)
لكل ملف أو مجلد ثلاث أنواع من الصلاحيات: القراءة (r)، الكتابة (w)، والتنفيذ (x). ويتم عرضها عبر ls -l
على شكل سلسلة من الأحرف، مثلاً:
-rw-r--r--
يعني هذا أنّ المالك يمتلك صلاحية القراءة والكتابة، والمجموعة تمتلك صلاحية القراءة فقط، والآخرون لديهم صلاحية القراءة فقط.
تغيير الصلاحيات باستخدام chmod
يستخدم الأمر chmod
لتغيير صلاحيات الملفات والمجلدات. يمكن استخدام النظام الرمزي:
chmod u+r file.txt
chmod g-w file.txt
chmod o+x file.txt
حيث u
للمالك، g
للمجموعة، وo
للآخرين. ويمكن أيضاً استخدام النظام الرقمي:
chmod 755 file.txt
هنا 7 = rwx للمالك، 5 = r-x للمجموعة، 5 = r-x للآخرين.
تغيير المالك والمجموعة باستخدام chown و chgrp
يستخدم الأمر chown
لتغيير مالك الملف:
chown newowner file.txt
لتغيير المجموعة:
chown :newgroup file.txt
أو يمكن الدمج:
chown newowner:newgroup file.txt
كما يمكن استخدام الأمر chgrp
لتغيير المجموعة:
chgrp newgroup file.txt
الجزء الرابع: البحث وتنقية المخرجات النصية
البحث في الملفات باستخدام grep
يعتبر grep
من أهم الأدوات النصية في لينكس، إذ يتيح البحث عن نص أو نمط معين في مجموعة كبيرة من الملفات. على سبيل المثال، للبحث عن كلمة “error” في ملف سجلات:
grep "error" /var/log/syslog
يمكن استخدام تعابير منتظمة (Regular Expressions) متقدمة مع grep:
grep -E "err[0-9]+" /var/log/syslog
يعرض هذا أي سطر يحتوي على err متبوعاً برقم واحد أو أكثر.
البحث في الملفات وفي النظام باستخدام find
يستخدم الأمر find
للبحث عن ملفات ومجلدات وفق معايير معينة (اسم، نوع، حجم، تاريخ التعديل). على سبيل المثال، للبحث عن ملف باسم “config.txt” ضمن مجلد /etc
:
find /etc -name "config.txt"
للبحث عن ملفات أكبر من 10 ميجابايت في /var
:
find /var -size +10M
كما يمكن دمج find مع أوامر أخرى، مثل حذف الملفات الناتجة من البحث:
find /tmp -type f -name "*.tmp" -exec rm {} \;
تنقية ومعالجة النصوص باستخدام awk و sed
أداتان قويتان في عالم لينكس لمعالجة النصوص هما awk
وsed
:
awk: أداة قوية لتحليل ومعالجة النصوص المرتبة في حقول. مثلاً، لعرض العمود الثاني في ملف مفصول بعلامة التبويب:
awk '{print $2}' file.txt
كما يمكن إجراء عمليات حسابية وتصفيه متقدمة.
sed: محرر تيارات (stream editor) يُستخدم لمعالجة النصوص بصورة آلية. مثلاً، لاستبدال جميع occurrences لكلمة “foo” بكلمة “bar” في ملف:
sed 's/foo/bar/g' file.txt
يمكن استخدام sed
في إضافة أو حذف أسطر، واستخراج أجزاء من البيانات، ما يجعله أداة مهمة في إنشاء سكربتات المعالجة النصية.
الجزء الخامس: إدارة العمليات والخدمات
عرض العمليات الجارية باستخدام ps و top
للتعرف على العمليات التي تعمل حالياً على النظام، يستخدم الأمر ps
:
ps aux
يعرض هذا الأمر قائمة بجميع العمليات الجارية مع معلومات عن المستخدم والذاكرة والمعالج.
أما الأمر top
فيعرض العمليات في واجهة تفاعلية يتم تحديثها دورياً، مما يسمح بمراقبة استهلاك الموارد الحي:
top
يمكن من خلال top
الانتقال بين الشاشات الفرعية، وفرز العمليات حسب استهلاك الذاكرة أو المعالج، وقتل العمليات عند الحاجة.
قتل العمليات باستخدام kill و killall
عند الحاجة لإيقاف عملية (مثلاً عملية توقف عن الاستجابة)، يمكن استخدام الأمر kill
مع معرف العملية (PID):
kill 1234
هنا 1234 هو PID العملية. إذا لم تستجب العملية، يمكن استخدام إشارة أقوى مثل SIGKILL:
kill -9 1234
الأمر killall
يقتل جميع العمليات التي تحمل اسماً معيناً:
killall firefox
سيحاول إيقاف جميع عمليات Firefox.
إدارة الخدمات باستخدام systemctl
في الأنظمة الحديثة التي تعتمد على Systemd، يتم إدارة الخدمات باستخدام الأمر systemctl
. لبدء خدمة:
sudo systemctl start nginx
لإيقافها:
sudo systemctl stop nginx
لإعادة تشغيلها:
sudo systemctl restart nginx
ولعرض حالة الخدمة:
systemctl status nginx
لتمكين خدمة عند الإقلاع:
sudo systemctl enable nginx
ولتعطيلها:
sudo systemctl disable nginx
الجزء السادس: إدارة الحزم والبرامج
أنظمة إدارة الحزم
تستخدم توزيعات لينكس المختلفة أنظمة إدارة حزم متنوعة. على سبيل المثال، تستخدم توزيعات ديبيان وأوبونتو apt
، بينما تستخدم ريدهات وفيدورا yum
أو dnf
. تتيح هذه الأدوات تثبيت البرامج وتحديثها وإزالتها بسهولة.
استخدام apt في توزيعات أوبونتو وديبيان
لتحديث قائمة الحزم:
sudo apt update
لتحديث جميع الحزم:
sudo apt upgrade
لتثبيت حزمة:
sudo apt install vim
لإزالة حزمة:
sudo apt remove vim
للبحث عن حزمة:
apt search nginx
استخدام yum و dnf في توزيعات ريدهات وفيدورا
في التوزيعات الأقدم من فيدورا وريدهات، كان yum
هو مدير الحزم الرئيسي، أما في الإصدارات الأحدث يستخدم dnf
. الأوامر متشابهة:
sudo dnf install httpd
sudo dnf remove httpd
sudo dnf search httpd
sudo dnf update
الجزء السابع: إدارة الشبكات
أوامر التشخيص والاختبار
لفحص الاتصال بالمضيفات البعيدة، يمكن استخدام الأمر ping
:
ping google.com
هذا الأمر يرسل حزم ICMP ويتحقق من الاستجابة. لإيقافه، اضغط Ctrl + C.
لمعرفة تفاصيل الاتصال بالشبكة، يمكن استخدام:
ifconfig
أو الأداة الأحدث:
ip addr
ip route
لمراقبة الاتصالات والشبكات، يمكن استخدام:
netstat -tulnp
في الأنظمة الحديثة، تم استبدال netstat بأوامر مثل:
ss -tulnp
أوامر تحليل المجالات والـ DNS
الأمر dig
يوفر معلومات حول الـ DNS:
dig google.com
يعرض السجلات الخاصة باسم النطاق. الأمر nslookup
يوفر وظيفة مشابهة، لكنه قد يكون أقل انتشاراً في الأنظمة الحديثة.
الجزء الثامن: إدارة السجلات ومراقبة النظام
ملفات السجلات في لينكس
تخزن الأنظمة ملفات السجلات في /var/log
. يمكن الاطلاع على سجلات النظام عبر:
cat /var/log/syslog
less /var/log/syslog
tail -f /var/log/syslog
tail -f
مفيد لمراقبة السجلات بشكل حي في الوقت الفعلي.
أوامر مراقبة الأداء
بالإضافة إلى top
، يمكن استخدام:
htop
لعرض واجهة أفضل. ولمراقبة أداء الأقراص:
iostat
ولعرض معلومات الذاكرة:
free -h
ولتحليل الإدخال والإخراج على مستوى النظام:
vmstat
الجزء التاسع: الأمن والتحصين
إدارة الجدار الناري باستخدام iptables و firewalld
لضبط الجدار الناري (Firewall) في لينكس، استخدم iptables
في الأنظمة الأقدم أو firewalld
في الحديثة. مثال على إضافة قاعدة للجدار الناري:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
في الأنظمة المعتمدة على firewalld:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
التحقق من الأمان واكتشاف الثغرات
يمكن استخدام أدوات مثل nmap
لفحص المنافذ المفتوحة على خادم ما:
nmap -sV example.com
وللتحقق من صلاحيات الملفات الحساسة، يمكن استخدام أوامر البحث مع grep لتحديد ما إذا كانت هناك ملفات بصلاحيات زائدة.
الجزء العاشر: النسخ الاحتياطي والأرشفة
إنشاء أرشيف باستخدام tar
يستخدم الأمر tar
لإنشاء أرشيف لملفات ومجلدات. مثلاً لإنشاء أرشيف باسم backup.tar من مجلد dir:
tar cvf backup.tar dir/
للضغط باستخدام gzip:
tar cvfz backup.tar.gz dir/
لاستخراج الأرشيف:
tar xvf backup.tar
tar xvfz backup.tar.gz
الجزء الحادي عشر: التعامل مع الملفات النصية الكبيرة
تقسيم الملفات وعرض أجزاء منها
لعرض الأسطر الأولى من ملف:
head file.txt
لعرض الأسطر الأخيرة:
tail file.txt
لتقسيم ملف كبير إلى أجزاء أصغر:
split -l 1000 largefile.txt segment
سيتم تقسيم الملف إلى مقاطع من 1000 سطر لكل منها.
الجزء الثاني عشر: إنشاء السكربتات والبرمجة النصية
مقدمة في Bash Scripting
تعد Bash Shell لغة نصية قوية تمكن من أتمتة المهام. يتم إنشاء سكربت بسيط بكتابة الأوامر في ملف نصي ثم إعطائه صلاحيات التنفيذ:
#!/bin/bash
echo "Hello, Linux!"
لحفظ الملف باسم script.sh وتنفيذه:
chmod +x script.sh
./script.sh
يمكن إضافة متغيرات، وجمل شرطية، وحلقات تكرار، واستدعاء أوامر خارجية، مما يسمح بإنشاء أدوات مخصصة لإدارة النظام.
الجزء الثالث عشر: التعامل مع الأنظمة الافتراضية والحاويات
الأوامر الأساسية في Docker
يستخدم Docker للحاويات (Containers) وهي بيئات خفيفة الوزن لتشغيل التطبيقات. لإنشاء حاوية:
docker run -d --name myapp nginx
لعرض الحاويات:
docker ps
لإيقاف حاوية:
docker stop myapp
لإزالة حاوية:
docker rm myapp
الجزء الرابع عشر: إدارة المستخدمين والمجموعات
إضافة المستخدمين وتعديلهم
لإضافة مستخدم جديد:
sudo adduser username
لتغيير كلمة المرور:
sudo passwd username
لإضافة المستخدم لمجموعة:
sudo usermod -aG groupname username
الجزء الخامس عشر: جداول مفيدة لأهم الأوامر
فيما يلي جدول يلخص بعض الأوامر الأساسية ووظائفها:
الأمر | الوظيفة | أمثلة |
---|---|---|
ls | عرض محتوى المجلد | ls -l, ls -a |
cd | تغيير المجلد الحالي | cd /etc, cd ~ |
cp | نسخ الملفات والمجلدات | cp file.txt /backup/, cp -r dir/ /backup/ |
mv | نقل أو إعادة تسمية الملفات | mv old.txt new.txt, mv file.txt /new/location/ |
rm | حذف الملفات | rm file.txt, rm -r directory |
chmod | تغيير الصلاحيات | chmod 755 file.txt, chmod u+w file.txt |
chown | تغيير المالك والمجموعة | chown user:user file.txt |
grep | البحث عن نص في ملفات | grep “pattern” file.txt |
find | البحث عن ملفات ومجلدات | find /etc -name “*.conf” |
tar | الأرشفة والضغط | tar cvf archive.tar dir/, tar xvf archive.tar |
apt / yum / dnf | إدارة الحزم | apt install package, dnf remove package |
systemctl | إدارة الخدمات | systemctl start service, systemctl status service |
docker | إدارة الحاويات | docker run, docker ps, docker stop |
الجزء السادس عشر: استكشاف الأخطاء وإصلاحها
أوامر مفيدة لاستكشاف أخطاء النظام
عند حدوث مشكلة على نظام لينكس، يمكن استخدام الأوامر التالية:
dmesg
: يعرض رسائل النواة، مفيد عند مشاكل الأجهزة أو التعريفات.journalctl
: في الأنظمة المعتمدة على systemd، يسمح بالوصول إلى سجلات النظام عبر journal.strace
: لتتبع استدعاءات النظام (system calls) الخاصة بعملية معينة لفهم سبب فشلها.lsof
: لمعرفة الملفات المفتوحة بواسطة العمليات، مفيد عند المشاكل المتعلقة بفتح الملفات أو المنافذ.
الجزء السابع عشر: أفضل الممارسات والأمن
تحسين الأمن عبر عدم منح صلاحيات زائدة
ينصح دائماً بعدم العمل كمستخدم جذر (root) إلا للضرورة. يمكن استخدام sudo
لتنفيذ أوامر إدارية عند الحاجة. كما يجب ضبط الجدار الناري بشكل مناسب، وتحديث النظام والبرامج باستمرار، واستخدام كلمات مرور معقدة، واعتماد المصادقة عبر المفاتيح عند الاتصال بالخوادم عن بعد.
الجزء الثامن عشر: التحكم بالإقلاع والخدمات
الأوامر المرتبطة بإقلاع النظام
يمكن إدارة نمط الإقلاع في النظام المعتمد على systemd عبر:
systemctl get-default
systemctl set-default multi-user.target
للدخول في وضع الإنقاذ:
systemctl rescue
الجزء التاسع عشر: التعامل مع التخزين والأقراص
تكوين وتجهيز الأقراص
يمكن عرض الأقسام عبر:
fdisk -l
lsblk
لتركيب الأقسام:
mount /dev/sdb1 /mnt
لإلغاء التركيب:
umount /mnt
الجزء العشرون: إتقان التعابير المنتظمة (Regex) مع الأوامر
تستخدم الأوامر مثل grep
وsed
وawk
التعابير المنتظمة بقوة. يمكن استخدام رموز مثل ^
و$
لتحديد بداية ونهاية السطر، و.
لمطابقة حرف واحد، و*
لمطابقة صفر أو أكثر من المحارف السابقة، و+
لمطابقة واحد أو أكثر.
مثلاً:
grep "^error" log.txt
يعرض جميع الأسطر التي تبدأ بكلمة error.
الجزء الحادي والعشرون: التحكم في العمليات المتعددة وإدارة المهام
التعامل مع المهام في الخلفية
يمكن تشغيل أوامر في الخلفية بإضافة &
في النهاية:
long_process &
لعرض المهام الجارية في الخلفية:
jobs
لإيقاف مهمة في الخلفية:
kill %1
حيث %1 يشير إلى رقم المهمة.
الجزء الثاني والعشرون: دمج الأوامر والتدفقات
إعادة التوجيه (Redirection) والأنابيب (Pipes)
لإعادة توجيه مخرجات أمر إلى ملف:
ls -l > list.txt
لإلحاق المخرجات في نهاية الملف:
ls -l >> list.txt
لإعادة توجيه الأخطاء القياسية:
ls /root 2> errors.txt
لاستخدام الأنابيب لتمرير مخرجات أمر إلى آخر:
ls -l | grep "txt"
هذا الأمر يعرض الملفات، ثم يبحث عن تلك التي تحتوي على “txt” في اسمها.
الجزء الثالث والعشرون: التعامل مع الملفات الثنائية والتحقق منها
التحقق من سلامة الملفات
لإنشاء قيمة تجزئة (hash) من ملف لضمان سلامته:
md5sum file.iso
sha256sum file.iso
يمكن مقارنة القيم الناتجة بقيم رسمية لمعرفة ما إذا تم التلاعب بالملف.
الجزء الرابع والعشرون: التحكم في أوقات تشغيل الأوامر
استخدام cron لأتمتة المهام الدورية
لجدولة مهمة لتعمل بشكل دوري، يمكن تعديل جدول cron
:
crontab -e
مثال لأمر يتنفذ يومياً عند منتصف الليل:
0 0 * * * /path/to/script.sh
الجزء الخامس والعشرون: الموارد والمراجع
التعلم المستمر من المراجع الرسمية
يمكن دائماً الرجوع إلى صفحات الدليل (man pages) للحصول على معلومات مفصلة حول الأوامر:
man ls
man grep
وللبحث ضمن صفحات الدليل:
man -k network
مصادر ومراجع إضافية
- Linux Documentation Project: https://www.tldp.org/
- GNU Manuals: https://www.gnu.org/manual/manual.html
- Arch Linux Wiki: https://wiki.archlinux.org/
- Debian Documentation: https://www.debian.org/doc/
- Fedora Documentation: https://docs.fedoraproject.org/en-US/
خاتمة
تُعد أوامر لينكس حجر الأساس للتعامل مع النظام بمرونة وفعالية، سواءً كان المستخدم مبتدئاً يرغب في التعرف على أساسيات إدارة الملفات والمجلدات، أو محترفاً في مجال إدارة الأنظمة يرغب في صقل مهاراته وتعلم أدوات متقدمة لتحليل الأداء والأمان. إنّ فهم هذه الأوامر وطرق دمجها وبناء سكربتات قادرة على تنفيذ مهام معقدة يجعل من واجهة سطر الأوامر أداة قوية في أيدي مديري النظام والمطورين.
لقد استعرض هذا المقال بعمق مجموعة واسعة من الأوامر الأساسية والمتقدمة، ابتداءً من التنقل في بنية نظام الملفات، وصولاً إلى إدارة الحزم، والتحكم بالخدمات، والتعامل مع الشبكات، وتحليل السجلات، وبناء السكربتات، وحتى إدارة الأمن والحاويات. هذا الكم الهائل من الأوامر والخيارات يمنح المستخدمين حرية مطلقة في تشكيل نظامهم وفق احتياجاتهم.
من خلال الممارسة المستمرة وقراءة الأدلة الرسمية والتجارب العملية، يمكن للمستخدم الوصول إلى مستوى عالٍ من الخبرة في استخدام أوامر لينكس، مما يعود بالنفع في مجالات لا حصر لها، سواء كانت إدارة خوادم، تطوير برمجيات، إدارة البنى التحتية، أو حتى الاستخدام الشخصي لتحقيق مهام يومية بكفاءة عالية.