logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
doc:systeme:cp [03/07/2014 00:06]
127.0.0.1 modification externe
doc:systeme:cp [24/08/2019 14:58] (Version actuelle)
Edenris [Copie d'un fichier distant dans le répertoire courant]
Ligne 1: Ligne 1:
-====== ​CP ======+====== ​cp ======
  
-La commande ''​cp''​ permet la copie de fichiers+  * Objet : cp 
 +  * Niveau requis : {{tag>​débutant avisé}} 
 +  * Commentaires : //​Copie ​de fichier// 
 +  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) 
 +  * Suivi :  
 +    * Création par [[user>​MaTTuX_]] <​date>​ //​Mattuxalem...//​ 
 +    * Testé par [[user>​smolski]] le 20-06-2009 
 +  * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=1478 | Lien vers le forum concernant ce tuto]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-  * Syntaxe+===== Présentation =====
  
-  ​cp+La commande ''​cp''​ permet la copie de fichiers. ​
  
-Elle s'utilise sous plusieurs formes ​:+== Nota == 
 +Pour les petits fichiers, cp convient très bien mais si vous transférez ou copiez des fichiers lourds et nombreux, utilisez les commandes : 
 +  * [[doc:​reseau:​rsync|rsync - synchronisation entre la source et la destination,​ ce qui correspond à une copie]] 
 +ou : 
 +  * [[doc:​systeme:​mv|mv - déplacement immédiat]] 
 +Ces deux outils offrant plus d'un tiers de vitesse en rapidité d'​exécution et une bonne sécurité en utilisant les options de chacun d'eux qui le permettent. \\ 
 +Lien de test sur le forum : 
 +  * [[https://​debian-facile.org/​viewtopic.php?​pid=252419#​p252419]]
  
-===== La copie d'un fichier source dans un fichier destination ​=====+===== Syntaxe ​=====
  
-  * Exemple+<​code>​cp [option]... source... dossier</​code>​ 
 +<​code>​cp [option]... [-T] source cible</​code>​ 
 +<​code>​cp [option]... -t dossier source...</​code>​ 
 +  ​
  
-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]]"​. +Elle s'utilise sous plusieurs formes ​:
-     +
-    mattux@linux-deb:~> ls +
-    amsn_received ​ bin  Desktop ​ Documents ​ essai  foto  logs  public_html +
-     +
- +
  
-On copie notre fichier ​+===== Copie d'​un ​fichier ​source =====
-   ​mattux@linux-deb:​~>​ cp essai essai1+
  
-On regarde le résultat :+Exemple de copie du fichier **essai** dans le répertoire principal((le répertoire à la racine de notre user ''/​home/​user''​ en cours)). 
 +  - S'​assurer d'​être bien positionné dans le répertoire principal avec [[doc:​programmation:​shell:​cd|la commande cd]] ainsi :<code user>cd ~</​code>​ 
 +  - Créer un fichier vide //essai// avec la commande [[doc:​systeme:​touch|touch]] :<code user>​touch essai</​code>​ 
 +  - On va d'​abord vérifier la présence du fichier **essai** à l'aide de [[doc:​systeme:​ls|la commande ls]] :<code user>ls essai</​code><​file config retour de la commande>​essai</​file>​Impec le fichier ''​essai''​ est bien présent. 
 +  - On copie maintenant notre fichier **essai** et, pour différencier la copie du fichier original présent dans le même répertoire courant((le répertoire d'où on lance la commande)) on lui accole par exemple le chiffre ''​1''​ :<code user>cp essai essai1</​code>​ 
 +  - On regarde le résultat :<code user>ls essai*</​code><​file config retour de la commande>​essai ​ essai1</​file>​
  
-    mattux@linux-deb:​~>​ ls +On a donc bien copié le fichier **essai** dans le répertoire courant en lui donnant le nouveau nom **essai1**. :-)
-    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.+===== Copie d'​un ​fichier ​distant ​dans le répertoire courant ​=====
  
-===== La copie d'un fichier dans le répertoire ​courant =====+Le répertoire courant est représenté par un . (Voir à ce sujet [[doc:​programmation:​shell:​repertoires|le tuto des répertoires]]). \\ 
 +On peut donc copier ​un fichier ​qui se trouve ​dans un répertoire ​donné en indiquant seulement le chemin où il se trouve.
  
-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]])+Depuis un répertoire courant ​dans lequel je veux copier le fichier //test// qui se trouve en **/​home/​martin/​archives**,​ je tape la commande ​suivante ​: 
 +<code user>​cp ​/home/martin/​archives/​test ​.</code>
  
-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.+//Pas plus compliqué que cela !//
  
-Si je me trouvepar 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 ​+souvent ​,l'​utilisateur souhaite copier des fichiers d'un dossier vers un autre sans avoir a ecrire les fichiers un a un : 
-  cp /home/martin/archives/test .+<code user>cp /chemin_de_ton_dossier//chemin_vers_ton_répertoire .</code>​(merci a paskal)
  
-Pas plus compliqué que cela !+===== Copie d'un fichier dans un répertoire différent =====
  
-===== La copie d'un fichier dans un répertoire ​différent =====+On va, par exemple, copier le fichier //​essai// ​d'où nous nous trouvons par défaut sur le bureau (Le bureau est en effet un répertoire ​nommé Desktop !) : 
 +<code user>cp essai /​home/​mattux/​Desktop</​code>​
  
-On va, par exemple, copier le fichier ​//essai// sur le bureau (Le bureau est en effet un répertoire nommé ​Desktop ​!) :+Résultat 
 +<code user>​ls ​/home/mattux/Desktop</​code>​
  
-  * Exemple +<file config retour de la commande>​435076.gif ​             MozillaFirefox.desktop 
- +beryl-settings.Profile ​ myComputer.desktop 
-    mattux@linux-deb:​~cp essai /​home/​mattux/​Desktop +essai                   ​Network.desktop</​file>​
- +
-  * Résultat +
- +
-    mattux@linux-deb:​~>​ ls /​home/​mattux/​Desktop +
- +
-    ​435076.gif ​             MozillaFirefox.desktop +
-    beryl-settings.Profile ​ myComputer.desktop +
-    essai                   ​Network.desktop+
  
 <note important>​**ATTENTION ! :** \\ <note important>​**ATTENTION ! :** \\
Ligne 62: Ligne 73:
  
  
-==== Option -i contrôler la copie ====+==== Option -i ====
  
 +Afin de contrôler la copie, on utilise l'​option **-i** ainsi :
 +<code user>cp -i essai /​home/​mattux/​Desktop</​code>​
  
-Afin de contrôler celaon utilise :+Si un fichier //essai// est déjà présent sur le bureau (répertoire /Desktop)**cp** s'​interrompt et demande par 
 +<file config commande interactive>​y (yes) ou n (no)</​file>​ 
 +s'il doit écraser le fichier !
  
-Soit : +<note tip>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...) <​key>​C-c</key> ​sur le clavier interrompt tous les processus de cp d'un coup...</​note>​
-    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...+==== Option -r (récursif====
  
-===== La copie de plusieurs fichiers dans un répertoire ​différent =====+L'​option cp -r permet ​de copier ​un répertoire ​avec son contenu.
  
-==== Plusieurs ​fichiers depuis des répertoires différents ====+Prenons en exemple le répertoire sav_cle_jojo et tout son contenu de fichiers et d'​autres répertoires avec leurs répertoires et fichiers contenus aussi en cascade : 
 +<code user>ls sav_cle_jojo</​code>​ 
 +<code config retour de la commande>​Affiche ​  ​commande-2015.odt</​code>​ 
 +  * 1 répertoire : Affiche 
 +  * 1 fichier : commande-2015.odt 
 +<code user>cp sav_cle_jojo sav_test</​code>​ 
 +<code config retour de la commande>​cp:​ omission du répertoire « sav_cle_jojo »</​code>​ 
 +<code user>cp -r  sav_cle_jojo sav_test</​code>​ 
 +<code user>ls sav_test</​code>​ 
 +<code config retour de la commande>​Affiche ​  ​commande-2015.odt</​code>​ 
 +===== Copie de fichiers depuis des répertoires différents ​=====
  
 Indiquer le chemin complet pour chacun des fichiers à copier. Indiquer le chemin complet pour chacun des fichiers à copier.
  
 Syntaxe : Syntaxe :
- +<code user>cp /​chemin1/​fichierA /​chemin2/​fichierB /​chemin3/​fichierC /​répertoire_de_destination/​</​code>​
-   cp /​chemin1/​fichierA /​chemin2/​fichierB /​chemin3/​fichierC /​répertoire_de_destination/​+
  
 ==== Plusieurs fichiers depuis le même répertoire ==== ==== 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]], et taper : 
 +<code user>cd /​répertoire_d_origine/</​code>​
  
-Se placer dans le répertoire d'​origine avec [[:​doc:​programmation:​shell:​cd | la commande cd]]. +Puis 
- +<code user>cp fichierA fichierB fichierC /​répertoire_de_destination/​</​code>​
-   cd /​répertoire_d_origine/​ +
-   cp fichierA fichierB fichierC /​répertoire_de_destination/​+
  
 === Commande bash === === Commande bash ===
  
 Rédiger une commande bash en utilisant les accolades {} ainsi : Rédiger une commande bash en utilisant les accolades {} ainsi :
- +<code user>cp /​répertoire_d_origine/​{fichierA,​fichierB,​fichierC} /​répertoire_de_destination/​</​code>​
-   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. Ce motif : ''​{fichierA,​fichierB,​fichierC}''​ est un [[:​doc:​programmation:​shell:​regexp | regexp]], ici dans un contexte bash.
Ligne 102: Ligne 122:
 ===== Lien ===== ===== Lien =====
  
-   man cp+<code user>man cp</​code>​
  
 //Voilà pour la commande cp.// //Voilà pour la commande cp.//
  
doc/systeme/cp.1404338815.txt.gz · Dernière modification: 16/07/2014 16:34 (modification externe)

Pied de page des forums

Propulsé par FluxBB