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

cp

Présentation

La commande cp permet la copie de fichiers.

Syntaxe

cp [option]... source... dossier
cp [option]... [-T] source cible
cp [option]... -t dossier source...

Elle s'utilise sous plusieurs formes :

Copie d'un fichier source

Exemple de copie du fichier essai dans le répertoire principal2).

  1. S'assurer d'être bien positionné dans le répertoire principal avec la commande cd ainsi :
    cd ~
  2. Créer un fichier vide essai avec la commande touch :
    touch essai
  3. On va d'abord vérifier la présence du fichier essai à l'aide de la commande ls :
    ls essai
    retour de la commande
    essai

    Impec le fichier essai est bien présent.

  4. On copie maintenant notre fichier essai et, pour différencier la copie du fichier original présent dans le même répertoire courant3) on lui accole par exemple le chiffre 1 :
    cp essai essai1
  5. On regarde le résultat :
    ls essai*
    retour de la commande
    essai  essai1

On a donc bien copié le fichier essai dans le répertoire courant en lui donnant le nouveau nom essai1. :-)

Copie d'un fichier distant dans le répertoire courant

Le répertoire courant est représenté par un . (Voir à ce sujet le tuto des répertoire).
On peut donc copier un fichier qui se trouve dans un répertoire donné en indiquant seulement le chemin où il se trouve.

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 :

cp /home/martin/archives/test .

Pas plus compliqué que cela !

souvent ,l'utilisateur souhaite copier des fichiers d'un dossier vers un autre sans avoir a ecrire les fichiers un a un :

cp /chemin_de_ton_dossier/* /chemin_vers_ton_répertoire .

(merci a paskal)

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 !) :

cp essai /home/mattux/Desktop

Résultat

ls /home/mattux/Desktop
retour de la commande
435076.gif              MozillaFirefox.desktop
beryl-settings.Profile  myComputer.desktop
essai                   Network.desktop

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 !

Option -i

Afin de contrôler la copie, on utilise l'option -i ainsi :

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

commande interactive
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 sur le clavier interrompt tous les processus de cp d'un coup…

Copie de 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

Se placer dans le répertoire d'origine avec la commande cd, et taper :

cd /répertoire_d_origine/

Puis

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 regexp, ici dans un contexte bash.

Lien

man cp

Voilà pour la commande cp.

1) N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
2) le répertoire à la racine de notre user /home/user en cours
3) le répertoire d'où on lance la commande
doc/systeme/cp.txt · Dernière modification: 26/10/2015 07:36 par smolski

Pied de page des forums

Propulsé par FluxBB