Vous êtes sur la page 1sur 39

Gestion du système de fichier

Manipulation des objets répertoires

•mkdir Créer un répertoire

•rmdir supprimer un répertoire

•cd changer de répertoire

•pwd afficher le répertoire du travail.


Créer un répertoire
• mkdir : Crée un répertoire vide

•Il faut tenir compte de l'endroit où on est quand on crée un répertoire si le


nom_de_répertoire est relatif (c-a-d ne commence pas par / ).

•On peut créer toute une branche de répertoires

•Syntaxe :

$ mkdir [option] rep1 rep2 ... repn


•Exemples :

$mkdir repertoire

$mkdir repertoire1 repertoire2

$mkdir -p RepNiveau1/RepNiveau2/RepNiveau3
Par défaut, les répertoires sont crées avec les droits
et les permissions d'accès 0777 moins les bits
positionnés dans la valeur du masque système.
Tape : #umask
Si la valeur du masque système est 0022, donc les
répertoires seront crées avec les droits : 0755

Le cours sur les droits des objets est un cours a part.


la valeur du masque système est souvent par défaut 0022,
on peut la changer pour l'adapter a des besoins précis.
changer la valeur du masque pour 0700 tu as signe ton arrêt
de mort.
Options de mkdir

-p : Crée toute une arborescence. Enfin de


compte elle crée les répertoires parents s'ils
manquent. (p = Parents)
Ex: #mkdir /home/linux1/linux2/linux3

-m : Fixe les droits d'accès sur le répertoire a la


création (m = mode)
Ex: #mkdir -m 700 repertoire
-v : t'informe de l'action realisee
rmdir

•rmdir : Remove Directory, suppression d'un répertoire vide


•Syntaxe
•$rmdir nom_répertoire
•l'option -p permet de supprimer une suite de repertoires, par
exemple : # rmdir -p /a/b/c/ est equivalente a la sucession des 3
commandes suivantes: #rmdir /a/b/c , #rmdir /a/b , #rmdir /a
•notez bien que l'option -p supprime les répertoires parents s'ils
deviennent vides après la surpression du répertoire fils
Se déplacer dans le S.Fichier

● cd : Change Directory, aller vers un autre répertoire


● Syntaxe :
● $cd [options] [nom_répertoire]
● Exemples:
● $cd ou $cd ~ : aller au répertoire de connexion.
● $cd .. : aller au répertoire parent du répertoire courant.
● $cd - : aller au répertoire de travail précédent
● $cd /var/lib/ : aller au répertoire /var/lib
Ou suis-je ?
• pwd : Print Working Directory: Affiche le nom absolu du répertoire
courant

• Exemple:
$ cd /usr/share/doc
$ cd ..
$ pwd
Je suis dans : /usr/share
$ cd ~
$ cd -
Ou suis-je ?
Manipulation des fichiers
• ls affiche les attribut d’un fichier.

• cp copier des fichiers.

• touch créer un fichier

• file connaître le type d’un fichier

• rm supprimer des fichiers.

• mv changer le nom d’un fichier ou le déplacer

• cat affiche le contenu d’un fichier


La commande ls
ls : afficher la liste des objets de l'endroit indiqué.

Syntaxe :
$ ls [options] [paramètres]
Options: (Principaux)
-i : inode
-l : les attributs
-a : y compris les fichiers cachés
-s : le nombre de blocs
-S : tri selon la taille par ordre décroissant
Exemples:
$ls

$ls -a

$ls -al

$ls -ail

$ ls – l a*

$ ls -l *d

$ls ??

$ls ?????

$ls -l ..

$ls -s ~

$ls -S /var/lib

$ls -l [abc]*
$ls -l [a-c]*

$man ls
la commande touch
– touch : créer un fichier vide
– si le nom n’existe pas alors il sera crée
– Si le nom existe alors ça date de modification sera changée .

– Syntaxe :
$ touch nom_fichier
$ touch fiche{1,2,3,4}

– Exemple :
$touch linux.txt
$ls -l linux.txt
Comprenons les attributs de linux.txt
Les attributs de fichier
----rw-rw- 1 root root 0 mar 27 17:13 linux.txt
1) le type de l’objet
2) Les 9 caractères de la protection de l’objet.
3) Le nombre de liens physique qui pointe l’objet
4) Le nom d'utilisateur ( le propriétaire).
5) Le groupe auquel appartient l'utilisateur propriétaire.
6) La taille en octets de l'objet.
7) La date et l'heure de la dernière modification.
touch sert aussi a

modifier des attributs date pour des fichiers existants


en usant de l'option -t

$touch -t AnneeMoisJourHeureMinute.Seconde \
nom Fichier1 nomFichier2......nonFichiern
Exemple:
#touch -t 201001011830.15 fiche1
#touch -t 201001011830.15 f*
#touch -t 201001011830.15 fiche{1,2,3,4,5}
Autres exemples ls
$ ls -l
$ ls il text1 text2 text3
$ ls -l repertoire
$ ls -l repertoire linux.txt README
$ ls -l
drwxr-xr-x 2 root root 89 Sep 4 16:34 Rep
-rwxr--r-- 3 root root 71 Sep 4 16:34 linux.txt
$ ls -lR rep/
Affichage récursif du contenu du répertoire rep (Elle parcourt les sous
répertoires)
La commande cp

• cp : Copier des objets d'une source vers une destination


● Syntaxe :
$cp [options ] source destination
• Si destination est un répertoire, alors copier source vers ce répertoire en
gardant le même nom.
• Si destination n'existe pas,alors créer le fichier destination avec le même
contenu que le fichier source.
• Si le fichier destination existe, une confirmation sera demandée
avant de remplacer le fichier existant.
Options de cp
-f : force la surpression des fichiers de destination

-i : pour demander une confirmation lorsque une action est faite.


Souvent un alias les prédéfinit dans un fichier spécial

-R(r) permet de copier des répertoire en récursif ( tout leur contenu)

-p réserver les propriétés initiale du fichier

Exemples:

cp -i /etc/passwd /root/

cp -i /etc/passwd /root/pass

cp /etc/passwd /etc/group /var/lib


Autres exemples...

Sous root:
#mkdir rep
# cp /bin/?? rep
# cp bin/?? ~
#cd /bin
#cp -f ~/?? .
Comme ...

Sous linux tout est fichier, On peut user de la


commande cp pour copier des répertoires.
C'est l'option -r qui le réalise
$cp -r rep1 rep2 (rep1 et rep2 sont 2 sous rep du
répertoire courant)
$cp -r /home/user1 rep1/rep2
$cp -r /home/user1 .
$cp -r /home/user1 ~
cp -r /var/log /bin
la commande mv

• mv : Déplacer ou renommer un fichier d'un répertoire vers un autre

• Syntaxe :

• $mv - [ options ] source destination

Options :

• -i : demander la confirmation

• -f : forcer le deplacement

• -b : Création de Backup pour les fichiers cibles existants


Cas 1:

Le répertoire de destination existe sinon c'est un


changement de nom.

#touch Fiche1
#mv Fiche1 Rep-inexistant
Un simple changement de nom
Cas 2 :

Les mêmes noms que les fichiers (source) a déplacer


n'existent pas dans le répertoire donné en argument.

#mv Fiche1 /home/linux1


Fiche1 se déplacera dans /home/linux1
Cas 3 :

Les mêmes noms que les fichiers (source) a déplacer


existent dans le répertoire donné en argument.

#mv Fiche1 /home/linux1


/home/linux1/Fiche1 sera détruit et remplacé par le
nouveau Fiche1 ( utiliser l'option -i)
Cas 4 :

Les mêmes noms que les fichiers (source) a déplacer


existent dans le répertoire donné en argument. On
peux créer un Backup pour le fichier existant dans le
répertoire donné en argument

#mv -b Fiche1 /home/linux1


/home/linux1/Fiche1 sera remplacé par Fiche1~ et
Fiche1 source prendra sa place
Meilleure utilisation du -b

#echo “bonjour” > f1


#echo “Salam” > f2
mv -bS.Back f1 f2
#ls f*
mv avec les repertoires

On peut utiliser mv pour déplacer des répertoires.


#mv rep1 rep2
le déplacement des répertoires systèmes peut boguer
le système d'exploitation.
Si rep1 existe deja sous rep2, il y' aura
avertissement du système
La commande rm
● rm : ReMove : supprimer un fichier

● Attention! Le fichier ne peut pas être récupéré

● Syntaxe :

$rm [option ] fichier

• Option :

-i demande de confirmation ( souhaitable)

-f pour pour forcer la suppression

-R ou –r pour effacer le contenu d’un répertoire en récursif


La commande rm

Exemples :

$ rm -i *

$ rm *.tmp

$ rm * .tmp // danger!!!
La commande rm

L'option - - (2 tirets collés qui se suivent): signale la fin d'une option.

Elle est surtout utile pour les fichiers dont les noms commencent par un tiret.

#touch -f1 (Le système considère le f qui suit le tiret comme une option invalide de

la commande rm.

#rm - - -f1
La commande cat

–cat : défiler à l'écran le contenu d'un ou plusieurs fichiers.

–Syntaxe :
$ cat [options] fichier1 fichier2...

–Mettre fin au defilement : <ctrl-c>.


–Interrompre le défilement avec possibilité de reprise : <ctrl s>
–Reprendre le défilement : <ctrl q>
La commande cat

Principles options:
-n : numerotation de lignes
-e : Affiche le signe $ a la fin de chaque ligne
-v : utilisée avec -et et -t (Visualisation)
# cat /etc/passwd
# cat -n /etc/passwd
# cat -e /etc/passwd
# cat -ne /etc/passwd
# cat -evt /etc/hosts
La commande cat

Il arrive parfois qu'on utilise cat comme un


éditeur de petit scripts:

#cat > script<< stop


clear
echo « Cours Linux”
stop
La commande more

– more : défiler le contenu une page d'écran à la fois.


–Syntaxe :
$more fichier

–Défiler la page suivante : taper la barre d'espacement


–Défiler une ligne supplémentaire la touche : taper <entree>
–Quitter la commande more: taper la lettre q.
Les liens

– Utiles pour faire apparaître un même fichier dans


plusieurs endroits avec des noms différents.
– Types de de liens :
• Lien physique :

• Lien symbolique :
– Lien physique :
– Associe deux ou plusieurs fichiers à une même
inode.
– Les deux fichiers restant indépendants.
– Le fichier sera supprimé seulement si tous ses liens
sont supprimés.
– Utile dans le cas des fichiers de données
– Lien symbolique :
– Fait référence à un fichier dans un répertoire.
– Si suppression du fichier source alors le lien sera
considéré comme "cassé" .
– Utile dans le cas de fichiers binaires (commandes)
Manipulation de liens
● ln : Commande de création de lien
Syntaxe :
$ln [option ] NomFichierSource NomFichierLien

● Cas de liens physiques :


$ln linux.txt linux1.txt

● Cas de liens symboliques :


$ln -s linux.txt linux1.txt
$ln -s /home/linux/linux.txt rep/linux1.txt
Illustration
● lien matériel:
● $ touch fiche; ln fiche fichelm1
● $ls -l
● -rw-r--r-- 2 root root 0 mar 28 09:23 fiche
● -rw-r--r-- 2 root root 0 mar 28 09:23
fichelm1

● $ ln fichelm1 fichelm2
● $ ls -l
$ echo “Cours Linux” >fichelm1
$ ls -l
-rw-r--r-- 3 root root 12 mar 28 09:30 fiche
-rw-r--r-- 3 root root 12 mar 28 09:30 fichelm1
-rw-r--r-- 3 root root 12 mar 28 09:30 fichelm2

$ rm fiche
$ ls -l
-rw-r--r-- 2 root root 12 mar 28 09:30 fichelm1
-rw-r--r-- 2 root root 12 mar 28 09:30 fichelm2
Travail pratique 1

En equipe de 2.
Le travail sera remis

Vous aimerez peut-être aussi