Déplacer des fichiers
Objectifs
Savoir copier un fichier
Savoir déplacer un fichier
Savoir supprimer un fichier
Méthode : Copier un fichier
Pour copier un fichier on utilise la commande cp
(abréviation de copy). Elle prend en paramètre le fichier source puis le fichier (ou dossier) de destination.
kyane@europa:~/librecours$ cp documents/compta-2019.txt archives/
Cette commande va copier le fichier documents/compta-2019.txt
dans le dossier archives
.
kyane@europa:~/librecours$ ls archives/
compta-2019.txt
Méthode : Copier un dossier
Pour copier un dossier on utilise la même commande, mais il est nécessaire d'utiliser le paramètre -r
(pour recursive). Cela permet d'indiquer que l'on souhaite copier le répertoire, mais aussi tout les fichiers et sous-dossiers qu'il contient
kyane@europa:~/librecours$ ls images/
photo.png
kyane@europa:~/librecours$ cp -r images/ archives/
kyane@europa:~/librecours$ ls -F archives/
compta-2019.txt images/
kyane@europa:~/librecours$ ls -F archives/images/
photo.png
Ici tout le dossier images
et son contenu sont copiés dans le dossier archives
.
Méthode : Déplacer un fichier
La commande mv
est utilisée pour déplacer un fichier ou un dossier, et donc indirectement aussi pour les renommer. Elle s'utilise de la même manière que la commande cp
.
mv vieuxfichier nouveaufichier
Par exemple pour déplacer un fichier dans un autre dossier
kyane@europa:~/librecours$ mv roman.txt archives/
Méthode : Supprimer un fichier
Enfin, la commande rm
(abréviation de remove) permet de supprimer un fichier sur la machine.
kyane@europa:~/librecours$ ls archives/
compta-2019.txt images roman.txt
kyane@europa:~/librecours$ rm archives/roman.txt
kyane@europa:~/librecours$ ls archives/
compta-2019.txt images
Certains fichiers sont protégés en écriture, de telle sorte qu'il est nécessaire de confirmer la suppression, pour éviter les erreurs.
kyane@europa:~/librecours$ rm protected.txt
rm : supprimer 'protected.txt' qui est protégé en écriture et est du type « fichier vide » ? y
Remarque : Forcer la suppression
Pour éviter de devoir confirmer la suppression d'un fichier il est possible d'ajouter l'option -f
à la commande, pour forcer la suppression du fichier. Mais attention, si le fichier est protégé en écriture c'est peut-être qu'il y a une bonne raison...
Attention : Suppression définitive
Il est très important de noter que rm
est une commande qui supprime définitivement le fichier de la machine. Il n'y a pas de système de corbeille ou de sauvegarde que l'on peut restaurer lorsque l'on utilise cette commande. Il est donc important de réfléchir avant de lancer cette commande.
Méthode : Supprimer un dossier
Pour supprimer un dossier, on utilise la même commande mais il est nécessaire d'utiliser le paramètre -r
(comme avec cp
)
kyane@europa:~/librecours$ rm -r archives/
À retenir
Avec nos 3 nouvelles commandes, on sait désormais comment copier, déplacer, renommer ou supprimer des fichiers et dossiers sur notre ordinateur. Elles sont simple d'utilisation, et généralement la différence entre fichiers et dossiers se traduit simplement par l'utilisation de l'option -r
. On prend garde cependant à la commande rm
, qui supprime de manière définitive.
Méthode : Métacaractère
Un métacaractère est un caractère qui peut être substitué par une sélection de motifs, vous donnant plus de flexibilité dans la recherche. Vous pouvez utiliser des métacaractères, dans les commandes que nous avons vu, pour plus de flexibilité, par exemple pour copier plusieurs fichiers en même temps. Il en existe plusieurs :
*
le métacaractère des métacaractères, il est utilisé pour représenter n'importe quel caractère ou n'importe quelle chaîne de caractères ;?
utilisé pour représenter un unique caractère ;[]
utilisé pour représenter n'importe caractère dans les crochets.
Le plus courant est d'utiliser *
, par exemple pour copier tout mes fichiers images dans un autre dossier.
kyane@europa:~/librecours$ cp images/*.png archives/
Cela copie tout les fichiers terminant par .png
depuis le dossier images
vers le dossier archives
.
Attention :
L'utilisation de métacaractères peut être dangereuse. On suppose qu'il existe un fichier appelé -R
.
Si on exécute rm *
, la commande construite sera rm -R *
, qui efface récursivement tous les fichiers.
Pour prévenir ce comportement, on peut séparer explicitement les options des arguments en utilisant l'option --
:
rm *
exécutera rm -- -R *
et l'argument -R
sera bien interprété comme un nom de fichier et non comme une option.