- 1. mkdir : création d’un répertoire (make directory)
- 2. rmdir : suppression d’un répertoire vide (remove directory)
- 3. rm : suppression d’un fichier / dossier (remove)
- 4. mv : renommer et/ou déplacer un fichier / dossier (move)
- 5. cp : copier un ficher / dossier (copy)
- 6. cat : concaténation de fichiers
- 7. dd : copie par blocs (en général d’un fichier…)
D’après l’édition 11 des travaux d’Alain Leaper, 2018-04-10
Licence GPL
1. mkdir : création d’un répertoire (make directory)
$ mkdir monRepertoire
$ ls -l
drwxr-xr-x 2 alain alain 4096 mai 9 12:12 monRepertoire
L’option -p
permet de créer, si nécessaire, les répertoires intermédiaires.
$ mkdir -p sousRep1/sousRep2/sousRep3
Si sousRep1
et sousRep2
étaient inexistants avant la commande, ils sont créés.
2. rmdir : suppression d’un répertoire vide (remove directory)
$ rmdir monRepertoire
Si le répertoire est vide, il est supprimé, sinon :
rmdir: failed to remove \`monRepertoire/': Le répertoire n'est pas vide.
3. rm : suppression d’un fichier / dossier (remove)
La commande rm permet de supprimer des fichiers. Il est également possible de
supprimer des dossiers en précisant l’option -r
, qui déclenche une
suppression récursive.
$ ls
monFichier monRep
$ rm -r monRep
$ ls
monFichier
Le répertoire monRep est supprimé, qu’il soit vide ou non. Tout son
contenu est également supprimé sinon.
|
L’option -f
(force) indique à rm
de supprimer sans poser de questions, ou
de ne rien dire si le fichier est inexistant.
$ rm toto
rm: ne peut enlever \`toto': Aucun fichier au répertoire de ce type
$ rm -f toto
Aucun message d’erreur.
Le caractère *
est un joker qui vaut tour à tour tous les noms de fichier
existant dans le répertoire courant. L’interpréteur de commande (bash,
dash, zsh) le remplace par la liste des fichiers contenu dans le répertoire
courant.
$ rm -f *
Supprime tout le contenu d’un dossier sans demander de confirmation.
Il n’a pas de méthode fiable et officielle de récupérer un fichier supprimé. Quelques solutions ont été évoquée ici : link:/tag/repair.html
Effectivement lancé en tant qu’utilisateur |
4. mv : renommer et/ou déplacer un fichier / dossier (move)
$ mv ancienNom nouveauNom
Le fichier ou dossier ancienNom
devient nouveauNom
.
$ mv ancienNom nouveauChemin/nouveauNom
Le fichier ou le répertoire est déplacé et, éventuellement renommé.
5. cp : copier un ficher / dossier (copy)
$ cp ancienNom nouveauNom
Les 2 fichiers existent dans le même répertoire ou dans des répertoires différents, si un nouveauChemin
est spécifié.
Quelques options :
-
-f
: écrase, sans avertissement,nouveauNom
s’il existait déjà, même s’il était protégé en écriture -
-r
: copie récursive des fichiers ou dossiers avec leur contenu (y compris pour les fichiers de périphériques) -
-R
: idem à-r
mais ne recopie pas le contenu des fichiers de périphériques (/dev/…
), dans le doute c’est préférable -
-p
: préserve les métadonnées : propriétaire, groupe, droits et date de création -
-d
: recopie les liens symboliques en tant que tels
6. cat : concaténation de fichiers
$ cat fichier fichier2 fichier3 > fichier4
fichier4
est alors constitué du contenu successif des trois premiers fichiers. Si fichier4
existait déjà, il est écrasé et son contenu est remplacé par le résultat de la commande.
Sans la redirection > , le fichier par défaut est celui du terminal, le contenu est alors affiché dans votre console. La commande cat est donc souvent utilisée pour voir le contenu d’un fichier.
|
Voir le Memo_4 pour plus de détails sur cat
.
7. dd : copie par blocs (en général d’un fichier…)
$ dd if=Origine of=Destination bs=tailleDeBloc […] autres options possibles
Il est utile de préciser une taille de bloc importante (comme 1M
) car la
taille par défaut est très petite (512 octets) et grève les performances avec
le matériel actuel (2020). Plus d’info : dd
buffer size (en anglais).
Autres options :
-
count=nombre
nombre de blocs à copier, pour ne pas copier toute la source -
conv=notrunc,noerror
ne pas tronquer le fichier de sortie, continuer malgré les erreurs de lecture
dd peut être utilisé en tant que simple utilisateur, à condition, pour certaines opérations, d’être membre du groupe floppy .
|
dd
est sans /bin
, il est donc possible de l’invoquer via : /bin/dd if=… […]