================== =========================================================== =================================================================== CETTE PAGE - SOUS UNE FORME RÉVISÉE - A ÉTÉ TRANSFÉRÉE À L'ADRESSE SUIVANTE :
http://wiki.mandriva.com/fr/D%C3%A9placement_de_fichiers_ou_de_r%C3%A9pertoires
NOUS VOUS CONSEILLONS DE VOUS Y RENDRE… ==================================================================
Comment déplacer fichiers et répertoires
Navigation :
Page précédente : Passer des fichiers et répertoires cachés en arguments à des commandes du shell
Page suivante : Les fichiers de configuration du shell Bash
Toutes les pages sur le shell - Index de la section - Index de la Base de Connaissances
Copier et déplacer, au fond, ce sont deux opérations qui d'un côté se ressemblent et de l'autre… ne se ressemblent pas : dans les deux cas un nouvel exemplaire d'un fichier ou d'un répertoire est créé en un certain emplacement de votre système de fichiers, mais dans le cas de la copie le fichier d'origine est conservé et vous vous retrouvez avec deux exemplaires distincts, et désormais autonomes, d'un même fichier d'origine, tandis que dans le cas du déplacement le fichier d'origine disparaît complètement et définitivement.
Nous allons voir dans ce qui suit que les commandes qui correspondent à ces deux opérations, 'cp' et 'mv', présentent elles aussi de nombreuses ressemblance et quelques différences.
Voyons d'abord quelques exemples d'emplois très simples de la commande 'mv'.
Pour déplacer, disons, le fichier 'piment' dans le répertoire condiments/, dans votre répertoire de travail, il suffit de taper ceci :
mv piment condiments/
et pour déplacer d'un coup le fichier 'sariette' et le fichier 'basilic' dans le même répertoire, ce serait :
mv sariette basilic condiments/
pour déplacer tout le contenu de votre répertoire de travail dans le répertoire /home/partage/ :
mv * /home/partage/
Notez que comme dans le cas de la commande 'cp' le répertoire destination doit être fourni en dernier. Comme la commande 'cp', la commande 'mv' peut opérer sur un ou plusieurs fichiers d'origine, qui peuvent être représentés en utilisant les diverses ressources de l'expansion des noms de fichier.
Le déplacement est naturellement 'conservateur' : toutes les propriétés du fichier déplacé sont conservées au cours de l'opération. En particulier :
- 1. les répertoires éventuellement inclus dans votre sélection initiale sont recopiés avec leur contenu
- 2. les fichiers ou répertoires conservent leur horodatage (date et heure) d'origine
- 3. le propriétaire et le groupe propriétaire du fichier ou du répertoire copié sont conservés
- 4. les permissions sont maintenues
- 5. les liens symboliques restent des liens symboliques (et ils conservent l'adresse vers laquelle ils pointaient, qu'elle soit absolue ou relative)
- 6. les liens en dur passés en argument restent liés.
La syntaxe et la sémantique de 'mv' sont par ailleurs très proches de celles de 'cp', une fois comprise la différence importante qui les sépare, on peut sans peine renvoyer à la documentation de 'cp' pour faire comprendre le fonctionnement de 'mv'.
La copie de répertoire fonctionne comme décrit pour 'cp' à la page Copie de répertoire ainsi que dans Copie de répertoire - suite.
Pour éviter d'écraser inconsidérément des fichiers on peut faire usage avec 'mv' comme avec 'cp' de l'option -i. Voir là-dessus Copier sans écraser. Un alias remplaçant 'mv' par 'mv -i' existe dans la Mandriva 2006, tout comme il existe un alias du même genre pour la commande 'cp', voir aussi là-dessus le lien précédent.
L'option -u de 'mv' ('u' pour l'anglais '-update' = 'mise à jour') permet de réserver l'écrasement au cas des fichiers de la source dont le nom est identique à un fichier de la destination mais comporte une date de modification postérieure à celle du fichier de destination. Seuls les fichiers plus anciens seront donc écrasés dans ce cas. Il est aussi possible d'éviter tout écrasement, voir Qu'on se le dise : pas d'écrasement !.
Comme 'cp' encore, 'mv' peut prendre comme 'destination' (dernier argument) non un nom de répertoire mais un nom de fichier. Dans ce cas elle permettra de renommer le fichier (éventuellement en créant une sauvegarde), voir là-dessus la page CP-6.
1er cas
cp * /home/vieux/ ; rm -Rf *
mv * /home/vieux/
cp -a * /home/vieux/ ; rm -Rf *
Autres ressources
man mv
info mv
Index de la section - Index de la Base de Connaissances
Auteur ptyxs (mars 2006)
Legal: This page is covered by the GNU Free Documentation License. Standard disclaimers of warranty apply. Copyright LSTB and Mandrakesoft.
Données du document
Base de connaissances
- Compte perdu ?
- Rejoignez la communauté, faites partie du Club: c'est gratuit!
- Abonnez vous au service PWP!