introduction à l'unix
DESCRIPTION
Introduction au cours de l'unix avec des exemplesTRANSCRIPT
![Page 1: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/1.jpg)
Plan du cours
Présentation généraleBourne ShellInterface C / Unix
systemesdeproduction.blogspot.com
Système UNIX
LAZREK Mohamed Département Informatique
![Page 2: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/2.jpg)
LE SYSTEME UNIXLE SYSTEME UNIX
PRESENTATION GENERALE
PRESENTATION GENERALE
![Page 3: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/3.jpg)
UNIX ?
Est un système d’exploitation
Permet la gestion des ressources de la machine :
matérielset
logiciels
![Page 4: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/4.jpg)
Version V Rel.4Version V Rel.4
Version V Rel. 3Version V Rel. 3
Version V Rel.2Version V Rel.2
Version V Rel. 0Version V Rel. 0
Version IIIVersion III
Version 7Version 7
Naissance d’UNIXNaissance d’UNIX
Version 6Version 6
BSD 4.3BSD 4.3
BSD 4.4BSD 4.4
BSD 4.2BSD 4.2
BSD 4.1BSD 4.1
AIX 3.0AIX 3.0
AIX 3.2AIX 3.2 OSF/1OSF/1
OSF/DCEOSF/DCEAIX 4.2AIX 4.21995
1991
1987
1985
1983
1981
1979
1969
1976
LE SYSTEME UNIXun peu d'histoire :
UNIX LINUX
![Page 5: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/5.jpg)
Mais la philosophie de l’Unix reste la même :
Un seul arborescence pour tous les utilisateurs
Les E/S sur les périphériques sont identiques aux E/S sur les fichiers
![Page 6: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/6.jpg)
MAIS AU FAIT ...... QUI ES TU ?
Un système opératoire :
Multi-Utilisateurs
Multi-tâchesréseau
![Page 7: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/7.jpg)
Mémoire Centrale
Processeur
P1 P1
Déroulement de l’exécution d’un programme dans un système :
mono utilisateur
et
mono tache
![Page 8: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/8.jpg)
Mémoire Centrale
ProcesseurProcesseur
E/S
P1
P2
P3
P4
P1P2P3P4 P2P4
Fin E/S et du Programme
Fin E/S
Fin Quantum
Fin du Programme
Lancer l‘exécution
Demande E/SArchitecture d’un système multi utilisateur
P1
P2
P3
P1
P2
P4P2
P4
P4
![Page 9: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/9.jpg)
Temps de réponse d’un programme dépend :
nombre d’utilisateurs connectés durée du quantum nombre d’opérations d’E/S durée des programmes ....
![Page 10: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/10.jpg)
Un langage de commande : séquentiel pseudo parallèle abréviations re-directions d'entrée-sorties synchronisation...
MAIS AU FAIT ...... QUI ES TU ?
![Page 11: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/11.jpg)
Ma philosophie :
"Keep it simple, and take it easy"
Mon succés
Toute une génération d'informaticiens a été
éduquée sur UNIX
Les champs d'application :
- développement de logiciel
- applications industrielles (extensions
temps réel)
- communications (courrier électronique,
transfert de fichier)
Une documentation en ligne
![Page 12: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/12.jpg)
Matériel
Noyau
Applications
Shell
Le noyau : gère les ressources matérielles (mémoire, unités
d'E/S...), les fichiers, l'allocation de temps UC gère les processus écrit en C et en assembleur
Structure du système
Le shell : est l’interface entre le noyau et l’utilisateur, des centaines de commande sont à la disposition des
utilisateurs
![Page 13: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/13.jpg)
Shell
Shell
Shell
utilisateur y
utilisateur z
utilisateur x
noyau
matériel
Connections des utilisateurs
![Page 14: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/14.jpg)
Documentation
$ man commande
Remarque :
majuscule # minuscule
![Page 15: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/15.jpg)
Tout utilisateur est enregistré dans deux fichiers :
/etc/groupnom de groupenuméro unique de groupe
/etc/passwdnom de loginmot de passe crypténuméro unique d'utilisateurnuméro unique de groupenom complet de l'utilisateurrépertoire initialinterpréteur de commande
NOTION D'UTILISATEUR
![Page 16: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/16.jpg)
avec possibilité de changer le mot de passe:
login : alipassword : *******
$ passwdchanging password for aliold password : ********new password : ********retrype new password : *******
La commande who permet de connaître les utilisateurs connectés
![Page 17: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/17.jpg)
Interface uniforme pour toute opération d'E/S
Trois types de fichiers : fichiers ordinaires répertoires fichiers spéciaux et périphériques :
terminaux
liens symboliques
prises réseaux
LE SYSTEME DE FICHIERS
![Page 18: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/18.jpg)
LE SYSTEME DE FICHIERSStructure arborescente
/
usr etc bin lib
group passwd
élève1
fich
Fich3Fich2Fich1
adm etudiant
profs
élève3élève2
TP2TP1
Fich5Fich4
home
oldenim
![Page 19: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/19.jpg)
/
bin dev usr
local
/
local bin
readme
Volume 1
Volume 2
Montage du volume 2
montage d’un volume
![Page 20: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/20.jpg)
Propriétaire et droits d’accèsa- protectionstrois catégories utilisateurs :
son propriétaire les utilisateurs qui font partie du même
groupe que le propriétaire les autres, excluant le propriétaire et les
usagers du groupe
A chacune de ces trois classes d’utilisateurs, trois types de droits accès sont définis
Ces types ont des significations différentes s’il s’agit d’un répertoire ou d’un fichier.
![Page 21: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/21.jpg)
LE SYSTEME DE FICHIERSStructure arborescente
/
usr etc bin lib
group passwd
élève1
fich
Fich3Fich2Fich1
adm etudiant
profs
élève3élève2
TP2TP1
Fich5Fich4
home
oldenim
![Page 22: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/22.jpg)
Pour un fichier :
r (read) droit de lire le fichier
w (write) droit de modifier le contenu du fichier
x (execute) droit d’exécuter le fichier.
![Page 23: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/23.jpg)
Pour un répertoire :r (read) droit de lire le répertoire, c a d
droit d’appliquer la commande lsW (write) droit d’écrire dans le répertoire. Cela permet
d’ajouter une entrée au répertoire : de créer un fichier ou un répertoirede modifier une ligne : changer le nom d’un fichierde retirer une ligne : détruire un fichier.
remarque : ce droit n’autorise pas à détruire le répertoire lui-même : il faut pour cela avoir le droit w sur le père de répertoirex droit de traverser le répertoire.
![Page 24: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/24.jpg)
Exemple :
r - - : chez le père : ls sr
- - x
- w x
![Page 25: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/25.jpg)
b- Changement des protections : chmod
chmod mode [fichier]+Le paramètre mode peut prendre deux formes :
1- dans la forme absolue, mode est composé de trois chiffres octaux. Le codage est :
un chiffre binaire un signifie donner le droit correspondant
un chiffre binaire zéro signifie retirer le droit correspondant
Exemple : chmod 300 fichier
![Page 26: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/26.jpg)
chmod mode [fichier]+
2- dans la forme symbolique, mode est composé de deux ou trois champs collés les uns aux autres, de la façon suivante :
[qui ]* position [droit]+
qui : est l’un des caractères suivants :u pour le propriétaire g pour le groupe o pour les autres eta pour tous ( user, group, others, all )
et indique pour qui on donne les droits qui suivent (défaut : a );
position : est l’un des caractères suivants : + pour mettre un droit - pour le retirer = pour mettre un droit et supprimer les autres;
droit : est l’un des caractères suivants : r pour le droit r, w pour le w x pour le droit x.
![Page 27: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/27.jpg)
Exemple : soit un fichier f
Permission avantValeur de mode Permission après
rw_ r_ _ _ _ _ chmod +x f
rw_ r_ _ _ _ _ chmod u-w f
rw_rw_rw_ chmod a=r f
rwx r_x _ _ x
r_ _r_ _ _ _ _
r_ _r_ _ r_ _
![Page 28: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/28.jpg)
Commande qui permet d’ajouter le droit d’exécution pour le propriétaire du fichier toto
chmod u+x totoCommande qui permet d’ajouter le droit d’écriture
pour le groupe du fichier totochmod g+w toto
Commande qui permet d’ajouter le droit d’exécution pour les autres et retirer ce droit au propriétaire et au groupe du fichier toto
chmod o=x totoCommande qui permet d’ajouter le droit
d’exécution à tous du fichier toto
chmod +x toto
![Page 29: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/29.jpg)
Forme générale d’une commande UNIX
commande [ paramètres ]
Convention :
.. répertoire parent
. répertoire courant
/ racine de l'arborescence
entrée
![Page 30: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/30.jpg)
Manipulation de répertoirescd #home directory
se positionner sur le répertoire personnel
pwd #print working directoryimpression du répertoire courant
cd <nom_rep> # change directorychangement de répertoire courant
mkdir <nom_rep> # make directorycréation d'un sous- répertoire
rmdir <nom_rep> # remove directorydestruction d'un répertoire si vide
mvdir <nom_rep1> <nom_rep2>re-nommage de répertoire #move directory
entrée
entrée
entrée
entrée
entrée
entrée
![Page 31: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/31.jpg)
Copie d’un ou de plusieurs fichiers : cp
cp origine résultat
Les droits de résultat sont les droits de origine.
cp [ origine ]+ rep
![Page 32: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/32.jpg)
REP1 :
REP2 :
cp a REP2/nf
cp ../a nf
REP1
REP2a b
c
nf
![Page 33: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/33.jpg)
Déplacement ou renommage : mv
mv ancien nouveau
![Page 34: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/34.jpg)
Exemple :
Avant :
Aprés :
REP1
REP2a b
c
REP1
REP2a b
nc
REP1 :
REP2 : mv c nc
mv REP2/c REP2/nc
![Page 35: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/35.jpg)
Autre exemple :
Avant :
Aprés :
REP1
REP2a b
nc
REP1
REP2a autreb
nc
REP1 :
REP2 : mv ../b autreb
mv b REP2/ autreb
![Page 36: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/36.jpg)
avant :
aprés :
REP1
REP2a autreb
nc
REP1
REP2a autreb
nc
REP1 :
REP2 : mv autreb nc ..
mv REP2/autreb REP2/nc .
![Page 37: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/37.jpg)
créer des liens sur fichier
ln anciennom nouveaunom
pas de duplication physique du fichier.
ln [fichier]+ rep
G5 j’ai donné le Mini ProjetG1 à refaire
![Page 38: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/38.jpg)
REP2 : ln ../* .
REP1
REP2a
autreb nc
REP1 : ln * REP2/
![Page 39: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/39.jpg)
Destruction d’un fichier ou d’un lien : rm
rm [ option ] [ fichier ]+
rm –r sous_rep
Appliquer à un lien symbolique, rm retire le lien symbolique.Destruction physique
options :r (récursif)
i
![Page 40: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/40.jpg)
Attributs d’un fichier, contenu d’un répertoire
ls [option][nom]*Quelques options :
-a affiche tous les noms de fichiers, même ceux qui commencent par un point
-i affiche le numéro de i-nœud devant chaque nom de fichier ou répertoire.
-l affiche pour chaque fichier successivement : la nature du fichier :
- : fichier ordinaire, d : répertoire,
l : lien symbolique les droits d’accès le nombre de liens de fichier les noms du propriétaire et du groupe la taille des fichiers en caractères la date de dernière modification le nom du fichier
-t affiche trié par la date de dernière modification
![Page 41: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/41.jpg)
$ lsREP2 REP3 a.c b.c c.o $ ls REP2d.c e.c$ ls -il34982 drwxr_x_ _ _ 2 ali 64 Mar 11 1:43 REP222782 drwxr_x_ _ _ 2 ali 1024 Mar 11 14:46 REP347267 _rwxr_x_ _ x 1 ali 16364 Mar 1 11:43 c.o69789 _rwxr_x_ _ _ 2 ali 64 Mar 1 11:43 a.c67659 _rwxr_x_ _ _ 2 ali 64 Mar 1 11:43 b.c
REP1
REP3REP2a.c b.c
d.c e.c
c.o
![Page 42: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/42.jpg)
Affichage interactifa- Appel simple :
more fichier
affichage page par page d’un fichier de texte, avec une pause en fin de chaque page.
Après une pause, on peut reprendre le défilement.
![Page 43: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/43.jpg)
b- Appel avec options :more [option] [-n] [+nl] [+/ chaîne] [fichier ]*-n nombre de lignes affichées;
+nl démarrer l’affichage à la ligne nl;
+/ chaîne démarrer deux lignes avant de rencontrer chaîne dans le fichier.
Parmi les options :-d affichage d’un message plus explicite que -More- en fin de page :
press space to continue, ‘q’ to quit-l ne pas tenir compte des (fin de page) du
fichier.
![Page 44: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/44.jpg)
Requêtes :A la fin de chaque page, l’utilisateur peut envoyer une requête :
entrée affiche la ligne suivante;
espace affiche la page suivante;
q quitter more;
= affiche le numéro de ligne courante;
v entre dans l’éditeur vi, à la ligne courante;
/ chaîne affiche la suite, deux lignes avant de rencontrer chaîne;
! commande exécute la commande ;
. répète la requête précédente;
: n (next) passe au fichier suivant, quand more est appelé avec plusieurs fichiers en paramètre;
: p ( previons ) passe au fichier précédent.
![Page 45: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/45.jpg)
Remarque :
more cherche ses options permanentes dans la variable MORE.
Si le fichier .profile contient par exemple MORE =‘-5’; export MORE
alors tout appel comme more fichier
sera équivalent à :more -5 fichier
![Page 46: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/46.jpg)
Affichage complet et concaténation
cat [fichier]*
Exemple :
$ cat fichier
$ cat >fichier ^d : pour terminer
$ cat f1 f2 > f3
![Page 47: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/47.jpg)
Affichage du début :
head [-n] f
$ head fichier
$ head -5 fichier
![Page 48: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/48.jpg)
Affichage de la fin d’un fichier :
tail [+ | -] nl fichier
Exemple : $ tail f affiche les dix dernières lignes de f.
$ tail +5 fichier affiche de la ligne 5 à la fin du fichier.
$ tail -5 fichieraffiche les 5 dernières lignes de f.
![Page 49: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/49.jpg)
Extrait d’un nom de fichier : basename
basename nom [suffixe]
Exemple :
$ basename ab.c .c
ab
$ basename prog-gus.p -gus.p
prog
Exemple :
Programme qui copie les .c en .old
![Page 50: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/50.jpg)
Comparaison de fichiers sans détail :
cmp fichier1 fichier20 si les fichiers sont identiques,
1 s’ils sont différents
Remarque :
$ cmp -s f1 f2
-s supprime les commentaires.
![Page 51: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/51.jpg)
Affichage par page, par colonne :a- Appel simplepr f1b- Appels avec optionspr [option]* [fichier]*+k commencer l’affichage à la page k ( défaut 1);-k afficher sur k ( défaut 1) colonnes de même
longueur -m fusionne les fichier et les affiche côte à côte (
incompatible avec -k);-sc associé à une option -k ou -m, demande à ne pas
tronquer les lignes trop longues et à remplacer le séparateur de colonnes par défaut (le TAB) par la caractère c;
-h texte l’argument texte remplacera le nom du fichier dans l’en-tête;
-t supprimer l’en tête, les lignes blanches de haut de page et les lignes blanches de fin de page.
![Page 52: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/52.jpg)
Afficher les fichiers TD1.txt et TD2.txt cote à cote avec une en-tête, sur 2 colonnes :
$ pr –mh “lists pat TD“ TD1.txt TD2.txt
Exemple :
Afficher fichier sur 3 colonnes :
$ pr -3 –t fichier
![Page 53: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/53.jpg)
Longueur d’un fichier :
wc [-lwc] [fichier]*
Exemple :
$ wc -lwc fichier
$ wc -l fichier
![Page 54: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/54.jpg)
Où se trouve un fichier : find [répertoire]+ [expression]+
répertoire est la liste des racines des sous hiérarchies à parcourir.expression est une suite d’options exprimant à la fois les critères de sélection des fichiers et les actions à leur appliquer. Lorsque le critère est vrai, l’action est exécutée. Dans la suite, on appelle ‘fichier courant’ le fichier examiné par find à un instant donné.Options, où n est mis pour n, -n, +n, -n veut dire ‘n et moins’, +n veut dire ‘n et plus’ :name motif vrai si le motif s’applique sur le nom du fichier courantuser nom vrai si le fichier courant appartient à l’utilisateur nomatime n vrai si le fichier a été utilisé dans les n derniers jours. Peu
utilisable, car find modifie la date d’accès aux fichiers qu’il examine
mtime n vrai si le fichier a été modifié dans les n derniers joursnewer fich vrai si le fichier courant a été modifié plus récemment que fich(expression) vrai si l’expression est vraie. Les parenthèses (qu’il faut faire
précéder d’un blanc et d’une contre barre pour qu’elles ne soient pas interprétées par le Shell) sont nécessaire si les expressions simples sont combinées par et (par défaut), ou, non
$ find / -name fichier -printfait
![Page 55: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/55.jpg)
Recherche d’une chaîne dans un fichier :
grep [option] chaîne [fichier]*Options : v affiche les lignes qui ne contiennent pas le motif c n’affiche que le nombre de lignes qui contiennent le motif i ignore la distinction minuscule / majuscule l n’affiche que les noms des fichiers renfermant le motif n numérote les lignes affichées s ou q les messages sont supprimés
Le code de retour est :
0 si un motif a été trouvé
1 sinon
2 s’il y a eu des erreurs
![Page 56: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/56.jpg)
Un processus est un programme en cours d’exécution. programme = statique processus = dynamique
Un même programme s’exécutant plusieurs fois donne des processus différents.
Un utilisateur <==> au moins un processus (le login Shell)
Caractéristiques d’ un processus :son pid ( process identifier ) un numéro qui lui attribue
UNIX dès sa création.le pid du processus parent (ppid) son propriétaireson terminal d’attachementun certain nombre d’autres attributs, priorité par exemple
Généralités sur les processus
![Page 57: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/57.jpg)
un processus doit naître pour exister.
Un processus meurt de deux façons : normalement
ou anormalement
$ps
PID TT STAT TIME COMMAND
6087 tty0 S 0:00 -csh
6091 tty0 R 0:00 ps
Naissance et terminaison d‘un processus
![Page 58: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/58.jpg)
nice [-n°] commande [paramètres]
priorité de 1 à 19 , priorité par défaut : 10
nohup commande (&)
processus non tué au logout
kill -9 processus_ID
le processus désigné est tué
at 1600 <commande>
Programmer l’heure d’une commande
sleep <nombre>
Suspendre l’exécution d’une commande
Quelques commandes
![Page 59: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/59.jpg)
Redirection
organe de sortie( par défaut écran )
commande ouprogramme
shell
organe d’entrée(par défaut clavier)
les erreurs( par défaut écran )
![Page 60: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/60.jpg)
Redirection des E/S :
Redirection des erreurs : 2 > mot 2 >> mot
mot est un nom de fichier ou une variable ou
un paramètre désignant un fichier.
< mot redirige l’entrée standard sur mot
>> mot idem, mais si le fichier désigné par mot
existe déjà, il est allongé (et non détruit)
>mot redirige la sortie standard sur un mot, avec création ou destruction éventuelle
![Page 61: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/61.jpg)
$ cat f1 f2 > f3
$ ls > f
$ ls f > fichier
$ ls f 2 > fichier
$ ls f > f1 2 > f2
$ nohup prgme >ff 2>fff
Exemple :
![Page 62: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/62.jpg)
commande2
écranSortie | Entrée
erreur (écran)
$commande1 | commande2| .............................| commanden
Pipe
commande1clavier
erreur (écran)
![Page 63: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/63.jpg)
Pipe1- Compter le nombre de fichiers dans le
repertoire courant :
$ ls | wc –w
![Page 64: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/64.jpg)
Pipe
![Page 65: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/65.jpg)
Pipe2- afficher les quatres derniers noms, dans l’ordre alphabétique,
d’une liste se trouvant dans le fichier liste :$ cat liste
BAKOALHAAHAA
Résultat de la commande :ALBAHAKO
![Page 66: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/66.jpg)
$ cat liste | sort | tail -4
$ sort liste | tail –4
![Page 67: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/67.jpg)
Caractères spéciauxCommandes séquentielles :
cmd1;cmd2;cmd3
Commande background :
cmd&
redirection des e/s
Groupement des commandes :
( )
![Page 68: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/68.jpg)
Ex:
$ date ; echo fin de commande > toto
$ cat toto
fin de commande
$ (date ; echo fin de commande ) > toto
la date
fin de commande
![Page 69: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/69.jpg)
Génération de nomsFacilités pour désigner de manière explicite un groupe de noms de fichiers à l'aide d'une notation condensée.Usage de caractères spéciaux dits méta-caractères :
? remplace un caractère quelconque, sauf le RET ls d?g
* remplace n'importe quelle chaîne, même vide, de caractères ne comportant pas de RET. ls s*n
[...] remplace un caractère parmi ceux qui sont énumérés entre les crochet, en un caractère ls d[io]g
![Page 70: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/70.jpg)
Mécanismes d’échappement
"..."
parenthésage dans lequel aucun caractère sauf `, " et $ n'a de signification spéciale
`...`exécution de la phrase placée entre accents graves
\ (backslash) négation d’un méta-caractère
![Page 71: Introduction à l'unix](https://reader034.vdocuments.mx/reader034/viewer/2022042614/5571f3c249795947648e87d3/html5/thumbnails/71.jpg)
Exemple
$ echo “ `date` ? “
Lundi 4 Mai 2004 ?
$ echo ‘ $a ` date ` ‘
$a ` date `
$ echo \?
?