td1 : unix, systeme de fichiers et commandes de` base · td1 : unix, systeme de fichiers et...
Post on 25-Jul-2018
244 Views
Preview:
TRANSCRIPT
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
TD1 : Unix, systeme de fichiers et commandes debase
Systeme et environnement de programmation
Universite Grenoble Alpes
INF203 (UGA) TD1 1 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 2 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 3 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Themes
But :1 Comprehension et resolution des problemes lies a
l’environnement de programmation et au systeme d’exploitation
2 Introduction aux modeles mathematiques et informatiques quistructurent le comportement d’un systeme
INF203 (UGA) TD1 4 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Themes
But :1 Comprehension et resolution des problemes lies a
l’environnement de programmation et au systeme d’exploitation2 Introduction aux modeles mathematiques et informatiques qui
structurent le comportement d’un systeme
INF203 (UGA) TD1 4 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Programme
1 Systeme UNIX : interpreteur, systeme de fichiers,programmation shell
2 Programmation en C : typage, entrees-sorties, structures decontrole, fonctions, structures de donnees, memoire, fichiers
3 Outils : gcc, make, gdb4 Introduction aux automates5 Programmation d’un mini-interpreteur : utilisation des notions
precedentes pour la realisation d’une partie d’un interpreteur decommandes simple
INF203 (UGA) TD1 5 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Organisation
6h par semaine : 2 × 1h30 de TD/CTDs et 3h de TP (surmachine)
Les TPs ne sont pas integralement encadres
Seances de TD/CTD : preparation des TPs a venir + retour surles TPs precedents
Certaines notions sont vues pour la premiere fois en TP
Pendant les TPs (en binome) : redaction d’un compte-rendu (parbinome) a rendre lors de la seance de TD suivante
Les comptes-rendus sont corriges mais pas notes
INF203 (UGA) TD1 6 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Evaluation
CC1 : un DS (25 %)
CC2 : des petites interros (∼ 15 minutes)les semaines 3, 5, 7, 9, 11 (25 %)
Examen terminal (50 %)(rattrapage : seule la note d’examen est remplacee)
INF203 (UGA) TD1 7 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Documentation
Pas de � polycopie � de cours
Documents en ligne a l’adresse
https://enseignement.gricad-pages.univ-grenoble-alpes.fr/L1-OS-prog/
des exercices
des slides de cours
des annales
des documents generaux
et accessoirement les sujets de TP
A consulter regulierement car frequemment mis a jour
INF203 (UGA) TD1 8 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 9 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Systeme d’exploitation
Ensemble (fini) de programmes permettant l’interaction entre unutilisateur et la machine, en particulier l’acces aux ressources destockage.
Exemple : Windows, Unix (Linux), Mac OS.
Les donnees sont stockees sous la forme de fichiers, organises ensysteme de fichiers (repertoire/fichier � ordinaire �).
INF203 (UGA) TD1 10 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Interpreteur
Un des premiers roles du systeme d’exploitation est d’executer enpermanence un programme de dialogue avec l’utilisateur charged’attendre et d’executer des commandes :
l’interpreteur de commandes
Les commandes sont generalement fournies
soit a travers une interface graphique(e.g., cliquer dans un menu, ou deplacer l’icone d’un fichier surl’icone de la corbeille)
soit sous forme de texte saisi dans une fenetre (console)
INF203 (UGA) TD1 11 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Shell
Dans le cas d’Unix les commandes sont fournies (par defaut) a traversune interface textuelle.
L’interpreteur de commandes s’appelle alors un shell
Il en existe plusieurs variantes avec des nuances syntaxiques : bash,sh, zsh, tcsh, . . .
Chaque utilisateur utilise une variante par defaut mais peut enchanger s’il le souhaite
Utilisation principale : traitement par lots (batch) des fichiers, e.g.,filtrage/agregation de donnees, installation de mises a jour
INF203 (UGA) TD1 12 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Shell
Dans le cas d’Unix les commandes sont fournies (par defaut) a traversune interface textuelle.
L’interpreteur de commandes s’appelle alors un shell
Il en existe plusieurs variantes avec des nuances syntaxiques : bash,sh, zsh, tcsh, . . .
Chaque utilisateur utilise une variante par defaut mais peut enchanger s’il le souhaite
Utilisation principale : traitement par lots (batch) des fichiers, e.g.,filtrage/agregation de donnees, installation de mises a jour
INF203 (UGA) TD1 12 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Fonctionnement de l’interpreteur
Par defaut :1 Affichage de l’invite (prompt) :
im2ag-turing:˜$(fini par # si administrateur � root �, $ sinon)
2 Attente d’une sequence de caracteres terminee parim2ag-turing:˜$ echo Hello World !
3 Analyse de cette sequence : est-ce une commande Unixcorrecte ?
si oui, on l’execute, et on attend que cette execution se termine !sinon, on affiche un message d’erreur
Ici, la commande est correcte donc execution :affichage de � Hello World ! �
4 On recommence . . .Remarque : executer une commande signifie (en general) demarrerun programme charge d’executer cette commande
INF203 (UGA) TD1 13 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Fonctionnement de l’interpreteur
Par defaut :1 Affichage de l’invite (prompt) :
im2ag-turing:˜$(fini par # si administrateur � root �, $ sinon)
2 Attente d’une sequence de caracteres terminee parim2ag-turing:˜$ echo Hello World !
3 Analyse de cette sequence : est-ce une commande Unixcorrecte ?
si oui, on l’execute, et on attend que cette execution se termine !sinon, on affiche un message d’erreur
Ici, la commande est correcte donc execution :affichage de � Hello World ! �
4 On recommence . . .
Remarque : executer une commande signifie (en general) demarrerun programme charge d’executer cette commande
INF203 (UGA) TD1 13 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Fonctionnement de l’interpreteur
Par defaut :1 Affichage de l’invite (prompt) :
im2ag-turing:˜$(fini par # si administrateur � root �, $ sinon)
2 Attente d’une sequence de caracteres terminee parim2ag-turing:˜$ echo Hello World !
3 Analyse de cette sequence : est-ce une commande Unixcorrecte ?
si oui, on l’execute, et on attend que cette execution se termine !sinon, on affiche un message d’erreur
Ici, la commande est correcte donc execution :affichage de � Hello World ! �
4 On recommence . . .Remarque : executer une commande signifie (en general) demarrerun programme charge d’executer cette commandeINF203 (UGA) TD1 13 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Messages d’erreur
Les commandes Unix sont toujours de la meme forme :
<nom de commande> suivi de 0 ou plusieurs <arguments>
Exemples :
cp tp1.c tp2.cmkdir TPls
Lorsqu’une commande est incorrecte, le shell ou la commande fournit unmessage d’erreur, different selon la nature de l’erreur :
lorsque le <nom de commande> est incorrect (le shell)
lorsque les <arguments> sont incorrects (la commande)
(pas le bon nombre, � options � inexistantes)
lorsque la commande ne peut s’executer correctement (le shell ou lacommande)
(les arguments sont � incorrects � : fichiers manquants, probleme de droits, . . . )
INF203 (UGA) TD1 14 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Messages d’erreur
Les commandes Unix sont toujours de la meme forme :
<nom de commande> suivi de 0 ou plusieurs <arguments>
Exemples :
cp tp1.c tp2.cmkdir TPls
Lorsqu’une commande est incorrecte, le shell ou la commande fournit unmessage d’erreur, different selon la nature de l’erreur :
lorsque le <nom de commande> est incorrect (le shell)
lorsque les <arguments> sont incorrects (la commande)
(pas le bon nombre, � options � inexistantes)
lorsque la commande ne peut s’executer correctement (le shell ou lacommande)
(les arguments sont � incorrects � : fichiers manquants, probleme de droits, . . . )
INF203 (UGA) TD1 14 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 15 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Arborescence
Tout objet (fichier ou repertoire) est identifiepar sa place dans l’arborescence.
Relation pere/fils
Deux modes de designation :
Chemin absolu
Chemin relatif
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
/ repertoire racine
· repertoire courant
·· repertoire parent
∼ repertoire principal (homedir) del’utilisateur courant
∼toto repertoire principal (homedir) del’utilisateur toto
INF203 (UGA) TD1 16 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Chemin absolu
Liste des repertoires (separe par des /) depuis laracine (/) jusqu’a l’objet recherche (inclus), ce dernieretant un fichier ou un repertoire
Allez-retour possible !
Exemples :
Chemin absolu du fichier toto.txt :
/home/d/devismes/INF203/toto.txt
Chemins absolus du repertoire CandiCrush :
/home/h/huard/CandiCrush/home/h/huard/.. /huard /CandiCrush
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
INF203 (UGA) TD1 17 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Chemin absolu
Liste des repertoires (separe par des /) depuis laracine (/) jusqu’a l’objet recherche (inclus), ce dernieretant un fichier ou un repertoire
Allez-retour possible !
Exemples :
Chemin absolu du fichier toto.txt :
/home/d/devismes/INF203/toto.txt
Chemins absolus du repertoire CandiCrush :
/home/h/huard/CandiCrush/home/h/huard/.. /huard /CandiCrush
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
INF203 (UGA) TD1 17 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Chemin relatif
Liste des repertoires (separe par des /) depuis lerepertoire courant (la ou l’on se trouve) jusqu’a l’objetrecherche
Allez-retour possible !
Exemples : Supposons que le repertoire courant estdevismes et que l’on souhaite designer le fichierExamINF203.pdf
../../r/rasse/ExamINF203.pdf
../../h/huard/CandiCrush/../../../r/rasse/ExamINF203.pdf
Remarques :
Il existe de nombreux chemins (une infinite),mais en general on choisit le plus court.
En pratique, on utilise souvent un cheminrelatif quand on est proche, sinon on utilise lechemin absolu.
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
INF203 (UGA) TD1 18 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Chemin relatif
Liste des repertoires (separe par des /) depuis lerepertoire courant (la ou l’on se trouve) jusqu’a l’objetrecherche
Allez-retour possible !
Exemples : Supposons que le repertoire courant estdevismes et que l’on souhaite designer le fichierExamINF203.pdf
../../r/rasse/ExamINF203.pdf
../../h/huard/CandiCrush/../../../r/rasse/ExamINF203.pdf
Remarques :
Il existe de nombreux chemins (une infinite),mais en general on choisit le plus court.
En pratique, on utilise souvent un cheminrelatif quand on est proche, sinon on utilise lechemin absolu.
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
INF203 (UGA) TD1 18 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Chemin relatif
Liste des repertoires (separe par des /) depuis lerepertoire courant (la ou l’on se trouve) jusqu’a l’objetrecherche
Allez-retour possible !
Exemples : Supposons que le repertoire courant estdevismes et que l’on souhaite designer le fichierExamINF203.pdf
../../r/rasse/ExamINF203.pdf
../../h/huard/CandiCrush/../../../r/rasse/ExamINF203.pdf
Remarques :
Il existe de nombreux chemins (une infinite),mais en general on choisit le plus court.
En pratique, on utilise souvent un cheminrelatif quand on est proche, sinon on utilise lechemin absolu.
/
d h r
huard
ExamINF203.pdf
rasse
INF203
devismes
CandiCrush
TopScores.txttoto.txt
home
INF203 (UGA) TD1 18 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Nom de fichier
Unix differencie les majuscules des minuscules !
Unix se fiche des extensions, elle ne determine pas le type dufichier. Il s’agit juste d’une � bonne pratique � pour classer lesfichiers.
Eviter les espaces, caracteres speciaux et accents dans lesnoms de fichiers.
difficile a gerer dans les scripts SHELL,pas portable, e.g. probleme de codage (isolatin, UTF8 ...) descaracteres accentues)
INF203 (UGA) TD1 19 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Nom de fichier
Unix differencie les majuscules des minuscules !
Unix se fiche des extensions, elle ne determine pas le type dufichier. Il s’agit juste d’une � bonne pratique � pour classer lesfichiers.
Eviter les espaces, caracteres speciaux et accents dans lesnoms de fichiers.
difficile a gerer dans les scripts SHELL,pas portable, e.g. probleme de codage (isolatin, UTF8 ...) descaracteres accentues)
INF203 (UGA) TD1 19 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Nom de fichier
Unix differencie les majuscules des minuscules !
Unix se fiche des extensions, elle ne determine pas le type dufichier. Il s’agit juste d’une � bonne pratique � pour classer lesfichiers.
Eviter les espaces, caracteres speciaux et accents dans lesnoms de fichiers.
difficile a gerer dans les scripts SHELL,pas portable, e.g. probleme de codage (isolatin, UTF8 ...) descaracteres accentues)
INF203 (UGA) TD1 19 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 20 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Syntaxe
commande [-options ] [arguments ] arguments
la commande peut etre suivie d’options ou d’arguments (parametres)(separes par des espaces)
Si ceux-ci apparaissent entre crochets dans l’aide en ligne man, c’est qu’ilssont facultatifs, sinon ils sont obligatoires
Les options sont precedees d’un � - � contrairement aux arguments
Exemple : lister des fichiers ls
ls [-altrR] [noms...]-a : (all) tous les fichiers, meme caches-l : (long) lister au format long-t : (tri) lister en triant par date-R : (recursive) lister recursivement dans les repertoires
ls -l ; ls -ltr ; ls -R -l /usr ; ls -al . ; ls -lR /etc
INF203 (UGA) TD1 21 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Syntaxe
commande [-options ] [arguments ] arguments
la commande peut etre suivie d’options ou d’arguments (parametres)(separes par des espaces)
Si ceux-ci apparaissent entre crochets dans l’aide en ligne man, c’est qu’ilssont facultatifs, sinon ils sont obligatoires
Les options sont precedees d’un � - � contrairement aux arguments
Exemple : lister des fichiers ls
ls [-altrR] [noms...]-a : (all) tous les fichiers, meme caches-l : (long) lister au format long-t : (tri) lister en triant par date-R : (recursive) lister recursivement dans les repertoires
ls -l ; ls -ltr ; ls -R -l /usr ; ls -al . ; ls -lR /etc
INF203 (UGA) TD1 21 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Conventions
quand il y a fich dans un nom, c’est un fichier
quand il y a rep, c’est un repertoire
<chemin>fich est un chemin qui designe le fichier fich<chemin> peut etre reduit au chemin vide note ε
Exemples :
dans /Public/123 Public/TP1/fichier.txt :<chemin> = /Public/123 Public/TP1/ et fich =fichier.txt
Dans fichier.txt, <chemin> = ε et fich = fichier.txt
INF203 (UGA) TD1 22 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Conventions
quand il y a fich dans un nom, c’est un fichier
quand il y a rep, c’est un repertoire
<chemin>fich est un chemin qui designe le fichier fich<chemin> peut etre reduit au chemin vide note ε
Exemples :
dans /Public/123 Public/TP1/fichier.txt :<chemin> = /Public/123 Public/TP1/ et fich =fichier.txt
Dans fichier.txt, <chemin> = ε et fich = fichier.txt
INF203 (UGA) TD1 22 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Aide en ligne
L’aide en ligne man contient la description :
des commandes UNIX (nombre et type des arguments, option, . . . )
des appels systemes
des fonctions C (nombre et type des arguments, valeur de retour, . . . )
Exemple : description de la commande ls
man ls
Pour chercher dans une page man il faut utiliser /
Exemple : cherche l’option -l dans la page man de ls
/-l
Plusieurs resultats correspondent au motif, utilisez n et p.
Une commande UNIX et une fonction C peuvent, par exemple, avoir le meme nom,e.g., printf. Solution : man est organise en sections. La section 1 (par defaut)contient les commandes UNIX, la section 2 est consacree aux appels systemes, et lasection 3 aux fonctions C.Exemple : pour charger la description de la fonction C printf (section 3)
man 3 printf
rtfm
INF203 (UGA) TD1 23 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Aide en ligne
L’aide en ligne man contient la description :
des commandes UNIX (nombre et type des arguments, option, . . . )
des appels systemes
des fonctions C (nombre et type des arguments, valeur de retour, . . . )
Exemple : description de la commande ls
man ls
Pour chercher dans une page man il faut utiliser /
Exemple : cherche l’option -l dans la page man de ls
/-l
Plusieurs resultats correspondent au motif, utilisez n et p.
Une commande UNIX et une fonction C peuvent, par exemple, avoir le meme nom,e.g., printf. Solution : man est organise en sections. La section 1 (par defaut)contient les commandes UNIX, la section 2 est consacree aux appels systemes, et lasection 3 aux fonctions C.Exemple : pour charger la description de la fonction C printf (section 3)
man 3 printf
rtfmINF203 (UGA) TD1 23 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les repertoires
pwd : affiche le repertoire courant (print working directory)
cd : change de repertoire courant (change directory)
cd .. remonte au repertoire perecd / va dans le repertoire racinecd va dans le repertoire principal (home) del’utilisateur courantcd - va dans le repertoire precedent
mkdir : mkdir rep cree le repertoire rep (make directory)
rmdir : rmdir rep supprime le repertoire rep s’il est vide(remove directory)
INF203 (UGA) TD1 24 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les repertoires
pwd : affiche le repertoire courant (print working directory)
cd : change de repertoire courant (change directory)
cd .. remonte au repertoire perecd / va dans le repertoire racinecd va dans le repertoire principal (home) del’utilisateur courantcd - va dans le repertoire precedent
mkdir : mkdir rep cree le repertoire rep (make directory)
rmdir : rmdir rep supprime le repertoire rep s’il est vide(remove directory)
INF203 (UGA) TD1 24 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les repertoires
pwd : affiche le repertoire courant (print working directory)
cd : change de repertoire courant (change directory)
cd .. remonte au repertoire perecd / va dans le repertoire racinecd va dans le repertoire principal (home) del’utilisateur courantcd - va dans le repertoire precedent
mkdir : mkdir rep cree le repertoire rep (make directory)
rmdir : rmdir rep supprime le repertoire rep s’il est vide(remove directory)
INF203 (UGA) TD1 24 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les repertoires
pwd : affiche le repertoire courant (print working directory)
cd : change de repertoire courant (change directory)
cd .. remonte au repertoire perecd / va dans le repertoire racinecd va dans le repertoire principal (home) del’utilisateur courantcd - va dans le repertoire precedent
mkdir : mkdir rep cree le repertoire rep (make directory)
rmdir : rmdir rep supprime le repertoire rep s’il est vide(remove directory)
INF203 (UGA) TD1 24 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les fichiers
ls : liste les fichiers et repertoires (list)
cp : copie des fichiers et repertoires (copy)
rm : supprime des fichiers et repertoires (remove)
mv : deplace et/ou renomme un fichier ou un repertoire(move)
touch cree un fichier vide (ou change la date d’un fichierexistant)
INF203 (UGA) TD1 25 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les fichiers
ls : liste les fichiers et repertoires (list)
cp : copie des fichiers et repertoires (copy)
rm : supprime des fichiers et repertoires (remove)
mv : deplace et/ou renomme un fichier ou un repertoire(move)
touch cree un fichier vide (ou change la date d’un fichierexistant)
INF203 (UGA) TD1 25 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les fichiers
ls : liste les fichiers et repertoires (list)
cp : copie des fichiers et repertoires (copy)
rm : supprime des fichiers et repertoires (remove)
mv : deplace et/ou renomme un fichier ou un repertoire(move)
touch cree un fichier vide (ou change la date d’un fichierexistant)
INF203 (UGA) TD1 25 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les fichiers
ls : liste les fichiers et repertoires (list)
cp : copie des fichiers et repertoires (copy)
rm : supprime des fichiers et repertoires (remove)
mv : deplace et/ou renomme un fichier ou un repertoire(move)
touch cree un fichier vide (ou change la date d’un fichierexistant)
INF203 (UGA) TD1 25 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Sur les fichiers
ls : liste les fichiers et repertoires (list)
cp : copie des fichiers et repertoires (copy)
rm : supprime des fichiers et repertoires (remove)
mv : deplace et/ou renomme un fichier ou un repertoire(move)
touch cree un fichier vide (ou change la date d’un fichierexistant)
INF203 (UGA) TD1 25 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Visualisation de fichiers texte
Utilisation des commandes (en mode texte) : cat, more et less
cat (concatener) : permet de concatener et d’afficher des fichiers.
Syntaxe : cat fich ...
less (ou more) : affiche des fichiers page par page ( )
Syntaxe : more fich
INF203 (UGA) TD1 26 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Visualisation de fichiers texte
Utilisation des commandes (en mode texte) : cat, more et less
cat (concatener) : permet de concatener et d’afficher des fichiers.
Syntaxe : cat fich ...
less (ou more) : affiche des fichiers page par page ( )
Syntaxe : more fich
INF203 (UGA) TD1 26 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Visualisation de fichier texte (suite)
Avant d’utiliser les commandes d’affichage, il est necessaire deconnaıtre le type de fichier (texte, binaire, executable).
La commande file permet d’identifier le type d’un fichier.
Syntaxe : file fich
Editeurs de texte : vi, vim, emacs, gedit . . .
INF203 (UGA) TD1 27 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Visualisation de fichier texte (suite)
Avant d’utiliser les commandes d’affichage, il est necessaire deconnaıtre le type de fichier (texte, binaire, executable).
La commande file permet d’identifier le type d’un fichier.
Syntaxe : file fich
Editeurs de texte : vi, vim, emacs, gedit . . .
INF203 (UGA) TD1 27 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Copie de fichiers/repertoires
cp (copy) : permetde copier des fichiersdes repertoires avec l’option -R
Syntaxe : cp source(s) destinationsource(s) = ce qui est copie destination = vers ou c’est copie
Exemple : cp index.html /home/toto/Copie le fichier index.html dans le repertoire toto (si toto existe)
Attention :
source(s) = fichiers a copier/deplacer
source(s) peut etre des fichiers/repertoires
destination = ou on les copie/deplace
destination peut exister ou non, etre un repertoire ou fichierINF203 (UGA) TD1 28 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Copie de fichiers/repertoires (exemple)
1 cp <chemin1 >fich1 <chemin2 >fich2
2 cp <chemin1 >fich <chemin2 >rep
3 cp <chemin>fich .
4 cp <chemin1 >fich1 ... <cheminn >fichn <chemindest >rep
5 cp -R <chemin1 >rep1 <chemin2 >rep2 (rep2 existe ou non)
INF203 (UGA) TD1 29 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Renommage/deplacement de fichiers
mv (move) : permet
de changer le nom des fichiers ou repertoiresde deplacer des fichiers ou repertoires(equivalent a une copie, suivie d’une suppression).
Syntaxe : mv <chemin1 >fich1 <chemin2 >fich2
Exemples :
mv index.html accueil.html (renommage)
mv index.html /home/site/ (deplacement)
mv index.html /home/site/accueil.html (deplacement +renommage)
INF203 (UGA) TD1 30 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Effacement ou suppression de fichiers ou repertoires
rm (remove) : permet de supprimer des fichiers ou repertoires
Option -R pour supprimer un repertoire (et son contenu)
Attention : pas de corbeille !
Syntaxe : rm <chemin>fich
Exemples :
rm /home/site/index.html
rm -R /home/site
INF203 (UGA) TD1 31 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 32 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Expansions
Dans une ligne de commande, le systeme de fichiers remplacecertains caracteres par des noms de fichiers(au sens large, cad fichiers ordinaires, repertoires ou liens).
Les expansions utilisent les symboles suivants : *, ?, [ ]
INF203 (UGA) TD1 33 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Metacaracteres (1/4)
Metacaractere *
Remplace n’importe quelle suite de caracteres (vide y compris) encoherence avec le systeme de fichier (remplace par � rien � si aucunecorrespondance).
Exemple :
lister tous les fichiers dont la 1ere lettre est un a
ls a*
deplacer tous les fichiers c du repertoire courant vers lerepertoire source
mv *.c source
INF203 (UGA) TD1 34 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Metacaracteres (2/4)
Metacaractere ?
Remplace 1 et 1 seul caractere en coherence avec le systeme defichier (remplace par � rien � si aucune correspondance).
Exemple : lister tous les fichiers nommes tp suivi d’un et un seulcaractere (tp1, tp2, tp3, . . . mais pas tp, tp12, tp1.txt . . . )
ls tp?
INF203 (UGA) TD1 35 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Metacaracteres (3/4)
Metacaractere [ ]
Ensemble de lettres et/ou chiffres : sequence d’elements (1 caractere)ou d’intervalles (bornes separees par −). Remplace 1 et 1 seulcaractere.
Exemples :
Lister tous les fichiers dont la premiere lettre est a, b ou c
ls [abc]* ou ls [a-c]*
Lister tous les fichiers qui se terminent par 7, 8 ou 9
ls *[7-9]
Lister tous les fichiers qui ne se terminent pas par 6, 7 ,8, 9
ls *[!6-9] ou ls *[ˆ6-9]
INF203 (UGA) TD1 36 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Metacaracteres (4/4)
lister la liste de fichiers suivante : toto31.txt, toto32.txt, ...,toto39.txt
Quelle est la bonne commande ?
ls toto[31-39].txt
ls toto3[1-9].txt
ls [toto31-toto39].txt
lister la liste de fichiers toto00.txt, toto01.txt, ...toto39.txt
Quelle est la bonne commande ?
ls toto??.txt
ls toto[0-3][0-9].txt
INF203 (UGA) TD1 37 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Metacaracteres (4/4)
lister la liste de fichiers suivante : toto31.txt, toto32.txt, ...,toto39.txt
Quelle est la bonne commande ?
ls toto[31-39].txt
ls toto3[1-9].txt
ls [toto31-toto39].txt
lister la liste de fichiers toto00.txt, toto01.txt, ...toto39.txt
Quelle est la bonne commande ?
ls toto??.txt
ls toto[0-3][0-9].txt
INF203 (UGA) TD1 37 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Exercice
Analysez le comportement de l’interpreteur quand on execute cp *dans les cas suivants :
le repertoire courant contient 1 fichier (et c’est tout)
le repertoire courant contient 2 fichiers (et c’est tout)
le repertoire courant contient 3 fichiers (et c’est tout)
le repertoire courant contient n fichiers et 1 repertoire (et c’esttout)
INF203 (UGA) TD1 38 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 39 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Tache de fond
On peut ne pas vouloir attendre que la commande en cours soitterminee avant de lancer une nouvelle commande :
parce que c’est une commande qui prend du temps (un calcullong)
parce que l’on veut que cette commande s’execute en continu(e.g., navigateur, editeur de texte)
On peut indiquer a l’interpreteur qu’une commande doit etre executeeen � tache de fond � (background) en la faisant suivre du symbole ’&’.
Dans ce cas l’interpreteur de commande lance l’execution (si lacommande est correcte) et se remet immediatement en attente de laprochaine commande.
Exemple : gedit &
INF203 (UGA) TD1 40 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Tache de fond
On peut ne pas vouloir attendre que la commande en cours soitterminee avant de lancer une nouvelle commande :
parce que c’est une commande qui prend du temps (un calcullong)
parce que l’on veut que cette commande s’execute en continu(e.g., navigateur, editeur de texte)
On peut indiquer a l’interpreteur qu’une commande doit etre executeeen � tache de fond � (background) en la faisant suivre du symbole ’&’.
Dans ce cas l’interpreteur de commande lance l’execution (si lacommande est correcte) et se remet immediatement en attente de laprochaine commande.
Exemple : gedit &INF203 (UGA) TD1 40 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Commandes speciales
Ctrl-C (ˆC) : arrete l’execution en cours (premier plan)
Ctrl-D : exit (ferme le terminal)
commande & : execute la commande en background(arriere-plan)
Ctrl-Z : suspend l’execution en cours (premier plan)
bg : bascule le processus en background (arriere-plan) aupremier plan(si on a oublie &, faire Ctrl-Z puis bg)
fg : permet de reprendre (en premier plan) l’execution suspendue
Ctrl-L : rafraichit l’ecran (clear , reset)
INF203 (UGA) TD1 41 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Systeme a temps partage
Remarque :
On peut ainsi avoir plusieurs commandes qui s’executent en memetemps : il faut donc que la machine soit capable d’executer plusieursprogrammes � en meme temps � alors qu’elle ne possede en generalqu’un petit nombre de processeurs.
Remarque :
En pratique cette � simultaneite � est obtenue a travers une fonctiondu systeme d’exploitation qui permet d’interrompre / relancerl’execution d’un programme, de gerer une liste de programmes � enattente �, de choisir lequel executer a un instant donne, etc.
Linux est un systeme a temps partage(et multi-taches, multi-utilisateurs)
INF203 (UGA) TD1 42 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Systeme a temps partage
Remarque :
On peut ainsi avoir plusieurs commandes qui s’executent en memetemps : il faut donc que la machine soit capable d’executer plusieursprogrammes � en meme temps � alors qu’elle ne possede en generalqu’un petit nombre de processeurs.
Remarque :
En pratique cette � simultaneite � est obtenue a travers une fonctiondu systeme d’exploitation qui permet d’interrompre / relancerl’execution d’un programme, de gerer une liste de programmes � enattente �, de choisir lequel executer a un instant donne, etc.
Linux est un systeme a temps partage(et multi-taches, multi-utilisateurs)
INF203 (UGA) TD1 42 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Systeme a temps partage
Remarque :
On peut ainsi avoir plusieurs commandes qui s’executent en memetemps : il faut donc que la machine soit capable d’executer plusieursprogrammes � en meme temps � alors qu’elle ne possede en generalqu’un petit nombre de processeurs.
Remarque :
En pratique cette � simultaneite � est obtenue a travers une fonctiondu systeme d’exploitation qui permet d’interrompre / relancerl’execution d’un programme, de gerer une liste de programmes � enattente �, de choisir lequel executer a un instant donne, etc.
Linux est un systeme a temps partage(et multi-taches, multi-utilisateurs)
INF203 (UGA) TD1 42 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Plan
1 Presentation de l’UE
2 Interpreteur
3 Systeme de fichiers
4 Commandes
5 Metacaracteres (Wild cards)
6 Gestion des taches
7 Droits d’acces
INF203 (UGA) TD1 43 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Multi-utilisateurs
Unix est un systeme multi-utilisateurs : plusieurs utilisateurs peuventutiliser le systeme simultanement
Cependant les droits d’acces des utilisateurs doivent etre restreintsafin de garantir l’integrite de leurs donnees
INF203 (UGA) TD1 44 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Categories
Unix distingue 3 categories d’utilisateurs
User (u) Designe la personne qui a cree le fichier/repertoire,c’est le proprietaire (peut etre modifie par la suite)
Group (g) Designe les membres du groupe d’utilisateursExemples :
prof, etudiants, . . . pour un etablissementd’enseignementdirection, comptabilite, infographie, . . . pour unesociete
Others (o) Designe tous les autres utilisateurs
INF203 (UGA) TD1 45 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Permissions
Unix distingue 3 types de permissions
r : read→ permission de lecture
w : write→ permission d’ecrire
x : execution→ permission d’executer
Pour visualiser les permissions sur les fichiers/repertoires : ls -l
type u g o ]lnk owner grp size last update named r w x r - x r - x 10 toto prof 4096 Dec 7 2017 cours- r w x r w x r w x 1 toto prof 6770 Nov 8 2012 img.jpg- r w x - - - - - - 1 toto prof 2001 Nov 1 2012 tp.txt
INF203 (UGA) TD1 46 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Types de fichiers
Il existe de nombreux types de fichiers, les principaux sont :
- : fichier ordinaire
d : repertoire
l : lien symbolique (raccourci)
INF203 (UGA) TD1 47 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Semantique des permissions (fichier)
Fichier r Autorise la consultation- affichage- copie
w Autorise la modification- modification du contenu- ne permet pas la suppression du fichier !- ne permet pas le changement de nom !
x Autorise l’execution- le fichier doit etre un programme
INF203 (UGA) TD1 48 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Semantique des permissions (repertoire)
Repertoire r Autorise la consultation- affichage du contenu (ls)
w Autorise la modification- ajout de contenu
(e.g., les fichiers et les sous-repertoires)(touch, mkdir, . . . )
- suppression de contenu (rm et rmdir)- renommage de contenu (mv)
x Autorise la traversee- utilisation dans un chemin d’accesa une entree (fichier/repertoire) (cd)
INF203 (UGA) TD1 49 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Modification des droits (1/2)
La commande chmod (change mode) permet de modifier les droits.
Syntaxe :
chmod mode ciblecible : fichier ou repertoire
mode : qui(ugo) quoi(+−=) comment(rwx)a = all = ugo
(chmod +r = chmod a+r = chmod ugo+r)
Exemples :retirer les droits d’ecriture et d’execution pour le groupe et lesautres sur le fichier img.jpg
chmod go-wx img.jpg
ajouter les droits de lecture et d’ecriture pour le groupe sur lefichier tp unix.txt
chmod g+rw tp unix.txtINF203 (UGA) TD1 50 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Modification des droits (2/2)
Syntaxe en forme condensee
chmod qui&quoi (3 chiffres) fichier/rep
1er chiffre : user
2eme chiffre : group
3eme chiffre : other
1 : execution
2 : ecriture
4 : lecture
Exemple : chmod 764 toto.sh
INF203 (UGA) TD1 51 / 52
Presentation de l’UE Interpreteur Systeme de fichiers Commandes Metacaracteres (Wild cards) Gestion des taches Droits d’acces
Merci de votre attention
INF203 (UGA) TD1 52 / 52
top related