B.1. الصَدَفة (shell) والأوامر الأساسية
في عالم يونِكس، يضطر كل مدير نظم إلى استخدام سطر الأوامر عاجلاً أو آجلاً؛ مثلاً، عندما يخفق النظام في الإقلاع بشكل صحيح ويكون وضع الإنقاذ النصي متوفرًا فقط. وبالتالي، فإن القدرة على التحكم بمثل هذه الواجهة هي مهارة إنقاذ أساسية في مثل هذه الحالات.
This section only gives a quick peek at the commands. They all have many options not described here, so please refer to the abundant documentation in their respective manual pages.
B.1.1. استعراض شجرة المجلدات وإدارة الملفات
بمجرد فتح جلسة جديدة، يعرض الأمر pwd
(اختصاراً للعبارة print working directory أو طباعة مجلد العمل) الموقع الحالي في نظام الملفات. يتم تغيير المجلد الحالي باستخدام الأمر cd directory
(الأمر cd
يعني change directory أي تغيير المجلد). يرمز للمجلد الأب بنقطتين دائماً ( ..
)، في حين يرمز للمجلد الحالي بنقطة واحدة ( .
). يسمح الأمر ls
بسرد (listing) محتويات المجلد. إذا لم يُعطَى أية متغيرات، فسيَعرضُ محتويات المجلد الحالي.
$
pwd
/home/rhertzog
$
cd Desktop
$
pwd
/home/rhertzog/Desktop
$
cd .
$
pwd
/home/rhertzog/Desktop
$
cd ..
$
pwd
/home/rhertzog
$
ls
Desktop Downloads Pictures Templates
Documents Music Public Videos
A new directory can be created with mkdir directory
, and an existing (empty) directory can be removed with rmdir directory
. The mv
command allows moving and/or renaming files and directories; removing a file is achieved with rm file
.
$
mkdir test
$
ls
Desktop Downloads Pictures Templates Videos
Documents Music Public test
$
mv test new
$
ls
Desktop Downloads new Public Videos
Documents Music Pictures Templates
$
rmdir new
$
ls
Desktop Downloads Pictures Templates Videos
Documents Music Public
B.1.2. استعراض وتعديل الملفات النصية
The cat file
command (intended to concatenate files to the standard output device) reads a file and displays its contents on the terminal. If the file is too big to fit on a screen, use a pager such as less
(or more
) to display it page by page.
The editor
command starts a text editor (such as vi
or nano
) and allows creating, modifying and reading text files. The simplest files can sometimes be created directly from the command interpreter thanks to redirection: echo "text" >file
creates a file named file with “text” as its contents. Adding a line at the end of this file is possible too, with a command such as echo "moretext" >>file
. Note the >>
in this example.
B.1.3. البحث عن الملفات، والبحث ضمن الملفات
The find directory criteria
command looks for files in the hierarchy under directory according to several criteria. The most commonly used criterion is -name name
: that allows looking for a file by its name.
يبحث الأمر
grep expression files
في محتويات الملفات ويستخلص السطور التي تطابق التعبير النظامي. (انظر الملاحظة الجانبية
أساسيات التعابير المنتظمة). تمكّن إضافة الخيار
-r
البحث التعاودي على جميع الملفات المحتواة في المجلد المعطى كمتغير. هذا يسمح بالعثور على ملف عندما نعلم جزءًا من محتوياته فقط.
The ps aux
command lists the processes currently running and helps identifying them by showing their pid (process id). Once the pid of a process is known, the kill -signal pid
command allows sending it a signal (if the process belongs to the current user). Several signals exist; most commonly used are TERM
(a request to terminate gracefully) and KILL
(a forced kill).
The command interpreter can also run programs in the background if the command is followed by a “&”. By using the ampersand, the user resumes control of the shell immediately even though the command is still running (hidden from the user; as a background process). The jobs
command lists the processes running in the background; running fg %job-number
(for foreground) restores a job to the foreground. When a command is running in the foreground (either because it was started normally, or brought back to the foreground with fg
), the Control+Z key combination pauses the process and resumes control of the command-line. The process can then be restarted in the background with bg %job-number
(for background).
B.1.5. معلومات النظام: الذاكرة، مساحة الأقراص، الهوية
The free
command displays information on memory; df
(disk free) reports on the available disk space on each of the disks mounted in the filesystem. Its -h
option (for human readable) converts the sizes into a more legible unit (usually mebibytes or gibibytes). In a similar fashion, the free
command supports the -m
and -g
options, and displays its data either in mebibytes or in gibibytes, respectively.
$
free
total used free shared buffers cached
Mem: 1028420 1009624 18796 0 47404 391804
-/+ buffers/cache: 570416 458004
Swap: 2771172 404588 2366584
$
df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 9614084 4737916 4387796 52% /
tmpfs 514208 0 514208 0% /lib/init/rw
udev 10240 100 10140 1% /dev
tmpfs 514208 269136 245072 53% /dev/shm
/dev/sda5 44552904 36315896 7784380 83% /home
يعرض الأمر id
هوية المستخدم الذي يشغل الجلسة، بالإضافة إلى قائمة بالمجموعات التي ينتمي إليها. بما أن الوصول إلى بعض الملفات أو الأجهزة قد يكون محدوداً بأعضاء مجموعة ما، فقد يكون التحقق من عضوية المجموعات مفيداً.
$
id
uid=1000(rhertzog) gid=1000(rhertzog) groups=1000(rhertzog)،24(cdrom)،25(floppy)،27(sudo)،29(audio)،30(dip)،44(video)،46(plugdev)،108(netdev)،109(bluetooth)،115(scanner)