Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:cp [03/06/2007 05:42] mattux créée |
doc:systeme:cp [03/07/2014 00:06] 127.0.0.1 modification externe |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== CP ====== | ||
+ | |||
+ | La commande ''cp'' permet la copie de fichiers. | ||
+ | |||
+ | * Syntaxe | ||
+ | |||
+ | cp | ||
+ | |||
+ | Elle s'utilise sous plusieurs formes : | ||
+ | |||
+ | ===== La copie d'un fichier source dans un fichier destination ===== | ||
+ | |||
+ | * Exemple | ||
+ | |||
+ | Copie du fichier essai dans le répertoire principal. On va tout d'abord vérifier la présence du fichier essai grâce à la commande "[[ls]]". | ||
+ | | ||
+ | mattux@linux-deb:~> ls | ||
+ | amsn_received bin Desktop Documents essai foto logs public_html | ||
+ | | ||
+ | |||
+ | |||
+ | On copie notre fichier : | ||
+ | mattux@linux-deb:~> cp essai essai1 | ||
+ | |||
+ | On regarde le résultat : | ||
+ | |||
+ | mattux@linux-deb:~> ls | ||
+ | amsn_received bin Desktop Documents essai1 essai foto logs public_html | ||
+ | |||
+ | On a donc copié le fichier essai dans le répertoire courant en lui donnant un nouveau nom soit, ici, essai1. | ||
+ | |||
+ | ===== La copie d'un fichier dans le répertoire courant ===== | ||
+ | |||
+ | Le répertoire courant est représenté par un . (voir à ce sujet la commande [[http://wiki.debian-facile.org/commande:cd#option_-_le_point |commande cd]]) | ||
+ | |||
+ | On peut donc, par conséquent, copier un fichier qui se trouve dans un répertoire donné en indiquant seulement le chemin où il se trouve. | ||
+ | |||
+ | Si je me trouve, par exemple, dans un répertoire donné et que je veuille y copier le fichier test qui se trouve dans /home/martin/archives, je peux taper la commande suivante : | ||
+ | cp /home/martin/archives/test . | ||
+ | |||
+ | Pas plus compliqué que cela ! | ||
+ | |||
+ | ===== La copie d'un fichier dans un répertoire différent ===== | ||
+ | |||
+ | On va, par exemple, copier le fichier //essai// sur le bureau (Le bureau est en effet un répertoire nommé Desktop !) : | ||
+ | |||
+ | * Exemple | ||
+ | |||
+ | mattux@linux-deb:~> cp essai /home/mattux/Desktop | ||
+ | |||
+ | * Résultat | ||
+ | |||
+ | mattux@linux-deb:~> ls /home/mattux/Desktop | ||
+ | |||
+ | 435076.gif MozillaFirefox.desktop | ||
+ | beryl-settings.Profile myComputer.desktop | ||
+ | essai Network.desktop | ||
+ | |||
+ | <note important>**ATTENTION ! :** \\ | ||
+ | Si le fichier //essai// existe déjà dans le répertoire de destination (Desktop //dans cet exemple//), son contenu est écrasé par le nouveau contenu du fichier essai du répertoire source ! | ||
+ | </note> | ||
+ | |||
+ | |||
+ | ==== Option -i contrôler la copie ==== | ||
+ | |||
+ | |||
+ | Afin de contrôler cela, on utilise : | ||
+ | |||
+ | Soit : | ||
+ | mattux@linux-deb:~> cp -i essai /home/mattux/Desktop | ||
+ | Si un fichier essai est déjà présent sur le bureau (répertoire /Desktop), cp s'interrompt et demande par y (yes) ou n (no) s'il doit écraser le fichier ! | ||
+ | |||
+ | Au cas d'un trop grand nombre de remplacements demandés (une commande de copie redoublée par inadvertance pour des fichiers volumineux par exemple...) **Ctrl C** interrompt tous les processus de cp d'un coup... | ||
+ | |||
+ | ===== La copie de plusieurs fichiers dans un répertoire différent ===== | ||
+ | |||
+ | ==== Plusieurs fichiers depuis des répertoires différents ==== | ||
+ | |||
+ | Indiquer le chemin complet pour chacun des fichiers à copier. | ||
+ | |||
+ | Syntaxe : | ||
+ | |||
+ | cp /chemin1/fichierA /chemin2/fichierB /chemin3/fichierC /répertoire_de_destination/ | ||
+ | |||
+ | ==== Plusieurs fichiers depuis le même répertoire ==== | ||
+ | |||
+ | === Commande cd === | ||
+ | |||
+ | Se placer dans le répertoire d'origine avec [[:doc:programmation:shell:cd | la commande cd]]. | ||
+ | |||
+ | cd /répertoire_d_origine/ | ||
+ | cp fichierA fichierB fichierC /répertoire_de_destination/ | ||
+ | |||
+ | === Commande bash === | ||
+ | |||
+ | Rédiger une commande bash en utilisant les accolades {} ainsi : | ||
+ | |||
+ | cp /répertoire_d_origine/{fichierA,fichierB,fichierC} /répertoire_de_destination/ | ||
+ | |||
+ | Ce motif : ''{fichierA,fichierB,fichierC}'' est un [[:doc:programmation:shell:regexp | regexp]], ici dans un contexte bash. | ||
+ | |||
+ | ===== Lien ===== | ||
+ | |||
+ | man cp | ||
+ | |||
+ | //Voilà pour la commande cp.// | ||