Vous êtes sur la page 1sur 36

Commandes fondamentales.

Mounir OUHAMMOU
cmp - Compare deux fichiers octet par octet.

• cmp [-l | -s] fichier1 fichier2


-l Affiche toutes les différences rencontrées.
-s Mode silencieux, affecte seulement le code
retour.
diff - Compare deux fichiers.
diff [-c | -e | -Cn ] [-br] fichier1 fichier2
-c Affiche trois lignes du contexte pour chaque
différence.
-Cn Affiche « n » lignes du contexte pour chaque
différence.
-e Produit un fichier de commande pour ed.
-b Ignore les espaces supplémentaires.
-r Exécute la commande récursivement sur les
répertoires de même nom, fichier1 et fichier2.
cat <nom de fichier> [<nom de fichier> ...]

• écrit le contenu des tous les fichiers affichés à l'écran. cat


peut regrouper des fichiers lorsque l'expression suivante
est utilisée:
cat <fichier1> <fichier2> ... > <nouveau_fichier>
• Le fichier intitulé <nouveau_fichier> contiendra le
résultat d'une concaténation (c'est−à−dire une mise
bout−à−bout) du contenu des fichiers donnés en
argument.
tac <fichier> [<fichier> ...]

• écrit le contenu de tous les fichiers, à l'écran


en renversant l'ordre des lignes −c'est−à−dire
en affichant la dernière ligne en premier. tac
est cat écrit à l'envers et se comporte comme
tel (semblable).
head [−n <lignes>] <fichier>
• affiche la liste des n premières lignes d'un
fichier ou les 10 premières lignes par défaut si
l'option −n n'est pas renseignée

• (voir aussi la commande tail).


tail [−f] [−n <lignes>] <fichier>

• affiche les <lignes> lignes d'un fichier ou les 10


dernières lignes par défaut si l'option /−n n'est
pas donnée. L'option −f signifie ``surveiller le
fichier pour les lignes qui ont été ajoutées à la
fin du fichier'‘.
exit

• permet la déconnexion de la session en mode


console et ferme un terminal en mode
graphique tout en vous laissant dans votre
session.
echo

• affiche un message au terminal. Essayez :


»echo 'bonjour',
»echo $[10*3+2].
expr <expression>
• calcule l'expression numérique expression. La
plupart des opérations arithmétiques que vous
connaissez seront effectuées. Essayez:
expr 5 + 10 '*' 2
• Notez les blancs entre les paramètres et la
présance des opérations (* est exécuté avant +).
file <fichier>
• affiche le type de données contenues dans un fichier. La
commande file portrait.jpg vous dira que c'est une donnée image
JPEG, standard JFIF. La commande file détecte une quantité très
importante de types de fichier, sur chaque plate−forme.
• file fonctionne en vérifiant que les premiers octets d'un fichier
correspondent aux séquences d'octets appelés nombres
magiques. La liste complète de ces nombres est stockée dans
/usr/share/magic.
• [Le terme ``nombre magique'‘ sous UNIX désigne normalement
les séquences d'octets ou de nombres qui ont une signification
déterminée. Ces nombres magiques sont créés pour le code
source, les formats de fichiers et le système de fichiers].
Free
• renvoie à l'écran la mémoire libre disponible. Vous
noterez deux listes: l'espace de swap et la mémoire
physique.
• Elle sont contiguës pour l'utilisateur. L'espace de
swap est une extension de la mémoire, extension
installée sur le disque. Bien sûr, son accès est lent par
rapport celui de la mémoire vive, mais elle fournit
l'illusion de plus de mémoire RAM disponible. Elle
évite la possibilité d'un dépassement de mémoire
RAM (ce qui est ``fatal'').
hostname [<nouveau_nom>]

• sans options, hostname affiche le nom de


votre machine. Autrement, elle remplace le
nom de machine par <nouveau_nom>.
lynx <url>

• ouvre une URL dans une console [une URL est


une adresse web nommée Uniform Ressource
Locator].
links <url>

• links est un autre type de navigateur web en


mode console.
nohup <commande> &
• exécute une commande en arrière−plan. La
commande produit le fichier nohup.out dans
votre répertoire home.
• Si, par exemple, vous effectuez nohup tar cvf
home.tar * & le fichier nohup.out contiendra la
liste des fichiers archivés. Pour la commande
tar. nohup présente une caractéristique
intéressante: elle continue de travailler même
après que vous soyez déconnecté.
strings [−n <len>] <fichier>
• retourne un fichier binaire, mais en ôtant tout
caractère illisible. Les groupes de caractères lisibles
sont placés sur des lignes séparées. Si vous avez un
fichier binaire dont vous pensez qu'il contient des
informations intéressantes mais de manière
complètement illisible lorsque vous l'affichez
normalement, utilisez strings pour en extraire les
informations importantes: essayez less /bin/cp et
ensuite strings /bin/cp.
uname

• imprime le nom du système d'exploitation


UNIX utilisé. Dans ce cas: LINUX.
whoami

• retourne à l'écran votre identifiant.


clear

• nettoye le texte du terminal courant.


date

• retourne à l'écran la date et l'heure. (La


commande time exécute un programme
entièrement différent).
dmesg

• renvoie à l'écran le journal des messages


affichés durant la phase d'initialisation du
système.
Recherche de fichiers
find
• Vous pouvez faire usage de la commande find pour rechercher des fichiers. Passez dans le
répertoire racine (root ou encore /) et tapez find. Cette commande sonde tous les fichiers en
descendant récursivement dans tous les sous−répertoires [la commande va dans les répertoires,
les sous−répertoires et leurs sous−répertoires de rang inférieur tout en répétant find]. En d'autres
mots, find, exécuté à partir du répertoire racine, affiche tous les fichiers du système. Comme la
commande travaillera durant un long moment, vous pourrez l'interrompre en appuyant sur les
touches Ctrl−C .

• Maintenant, revenez dans votre répertoire home et exécutez find à nouveau. Vous verrez tous les
fichiers de votre répertoire personnel. Vous pouvez spécifier différentes options à find:

• find −type d
– affiche seulement les répertoires mais pas leurs fichiers,

• find −type f
– affiche seulement les fichiers et non les répertoires qui les contiennent même si la commande descendra dans chacun
d'eux,
• find −name <fichier>
– trouve exclusivement les fichiers qui ont pour nom <fichier>. Par exemple, testez :
• find −name '*.c' qui détectera tous les fichiers ayant l'extension .c (utiliser
l'expression find −name *.c sans les caractères ' ' ne fonctionnera pas).
• find −name Mary_Jones.lettre détectera le fichier portant le nom
Mary_Jones.lettre,

• find −size[[+|−]] <taille>


– trouve les fichiers qui ont une taille supérieure à (pour +) ou inférieure à (pour −) <taille>
kilooctets ou à la taille spécifiée s'il n'y a pas de signe,

• find <répertoire> [<répertoire> ...]


– commence la recherche dans chaque répertoire indiqué, Il existe trop d'options

pour ce petit tour d'horizon.


Principales options de la commande find.

Option Signification
-name Recherche par nom de fichier.

-type Recherche par type de fichier.


-user Recherche par propriétaire.
-group Recherche par appartenance à un groupe.

-size Recherche par taille de fichier.


-atime Recherche par date de dernier accès.

-mtime Recherche par date de dernière modification.

-ctime Recherche par date de création.

-perm Recherche par autorisations d'accès.

-links Recherche par nombre de liens au fichier.


• Voici d'autres exemples d'utilisation de la commande find :
• Pour afficher tous les fichiers se terminant par ``.c'' :
– find -name ".c" -print
• Pour afficher tous les répertoires dont le nom se termine par ``s'' :
– find -type d -name "*s" –print
• Pour afficher tous les fichiers ayant une taille de 10 blocs:
– find . -size 10 –print
• ce qui est équivalent à demander la liste des fichiers ayant une taille de 5120 caractères :
– find . -size 5210c -print
– On aurait pu aussi demander la liste des fichiers ayant une taille supérieure (+200k) ou
inférieure (-200k) à 200 Ko.
• Pour afficher tous les fichiers ayant une certaine permission exprimée en octale  :
– find -perm 755 -print
• ou ayant au minimum les droits d'écriture pour le groupe :
– find -perm -020 -print
• Pour éxecuter la commande ls -l pour chaque fichier trouvé :
– find -type f -exec ls -l {} \;
– et pour demander confirmation avant chaque action :
– find -type f -ok -exec rm {} \;
• Pour associer plusieurs critères avec -a pour et, -o pour ou, ! pour négation. Par exemple :
– find ! -user root -print affiche tous les fichiers n'appartenant à root, et
– find \( -name '*.tex' -o -name '*.dvi' \) -print affiche tous les fichiers se terminant par
``.tex'' ou ``.dvi''.
locate , updatedb
• La commande find présente l'inconvénient de lire de manière
active les répertoires pour y trouver les fichiers. Ce processus
est lent, notamment lorsque vous commencez depuis le
répertoire racine.
• locate <fichier> est une commande alternative. Celle−ci
recherche les fichiers dans une base de données établie au
préalable. Donc, la recherche est rapide. En contre−partie, il
est nécessaire d'utiliser updatedb afin de mettre à jour la base
de données des fichiers utilisés par locate. Sur certains
systèmes, upadatedb est exécuté automatiquement tous les
jours à 4H00.
Recherche dans les fichiers
grep
• Très souvent, vous devrez chercher dans un certain nombre
de fichiers afin d'y trouver un mot ou une partie de phrase
donnée. Cela pourrait être le cas de fichiers contenant une
liste de numéros de téléphone avec des noms de personnes et
des adresses. La commande grep effectue une recherche
ligne−par−ligne dans un fichier et affiche les lignes qui
contiennent un mot que vous lui avez indiqué. La syntaxe de
grep se présente ainsi:
grep [options] <motif> <fichier> [<fichier> ...]
• grep −n <motif> <fichier>
– montre le nombre de lignes pour lequel le motif a été trouvé dans le fichier.
• grep −<nombre> <motif> <fichier>
– affiche le <nombre> de lignes qui précèdent et suivent chaque ligne où le motif
a été détecté dans le fichier.
• grep −A <nombre> <motif> <fichier>
– affiche le <nombre> de lignes qui suivent chaque ligne où le motif a été détecté
dans le fichier.
• grep −B <nombre> <motif> <fichier>
– affiche le <nombre> de lignes qui précèdent chaque ligne où le motif a été
détecté dans le fichier.
• grep −v <motif> <fichier>
– imprime seulement les lignes qui ne contiennent pas le motif indiqué comme
argument.
• grep −i <motif> <fichier>
– agit de la même manière que grep mais sans sensibilité à la casse.
L'option − −
• S'il advient qu'un nom de fichier débute par −, alors il
sera impossible de l'utiliser en tant qu'argument
d'une commande. Pour contourner cet problème, la
plupart des commandes présentent l'option −−. Cette
option indique à la commande qu'il n'y a pas d'autre
option qui suit. Tout autre indication sera traité
comme un nom de fichier littéral. Par exemple:

» touch −− −nom_de_fichier_stupide
» rm −− −nom_de_fichier_stupide

Vous aimerez peut-être aussi