Commande cp de Linux

Linux 命令大全Référence des commandes Linux

La commande Linux cp (nom complet en anglais : copy file) sert principalement à copier des fichiers ou des répertoires.

Avec la commande cp, les utilisateurs peuvent copier des fichiers ou des répertoires d'un emplacement à un autre et peuvent éventuellement préserver les attributs des fichiers d'origine (tels que les permissions, les horodatages, etc.).

Syntaxe

cp [options] source dest
ou 
cp [选项] 源文件 目标文件

Ici, source (fichier source) représente le chemin du fichier ou du répertoire à copier, et dest (fichier de destination) représente le chemin du fichier ou du répertoire copié.

Description de l'option:

  • -rou-R: Copie récursivement le répertoire et son contenu (utilisé pour copier des répertoires).

  • -i: Mode interactif ; demande confirmation à l'utilisateur avant d'écraser.

  • -f: Copie forcée ; écrase le fichier de destination sans demander de confirmation.

  • -v: Affiche le processus de copie détaillé (verbeux).

  • -p: Préserve les attributs d'origine du fichier (tels que les permissions, les horodatages, etc.).

  • -a: Mode archive, équivalent à-dpR, qui préserve tous les attributs de fichier et copie les répertoires de manière récursive.

  • -u: Copier uniquement lorsque le fichier source est plus récent que le fichier de destination (mode mise à jour).

  • -l: Créer des liens durs au lieu de copier les fichiers.

  • -s: Créer des liens symboliques (liens souples) au lieu de copier les fichiers.

Exemples

1. Copier un fichier vers un répertoire de destination

cp file.txt /path/to/destination/

Copier file.txt vers le répertoire /path/to/destination/.

2. Copier un fichier et le renommer

cp file.txt /path/to/destination/newfile.txt

Copier file.txt vers le répertoire /path/to/destination/ et le renommer en newfile.txt.

3. Copier récursivement un répertoire

cp -r /path/to/source_dir /path/to/destination/

Copier récursivement le répertoire source_dir et son contenu vers le répertoire de destination.

4. Copier en mode interactif

cp -i file.txt /path/to/destination/

Si un fichier du même nom existe déjà à la destination, l'utilisateur sera invité à confirmer s'il faut l'écraser.

5. Préserver les attributs de fichier

cp -p file.txt /path/to/destination/

Copier le fichier et préserver ses attributs d'origine (tels que les permissions, les horodatages, etc.).

6. Copier uniquement les fichiers plus récents

cp -u file.txt /path/to/destination/

Copier uniquement lorsque file.txt est plus récent que le fichier de destination.

7. Afficher le processus de copie

cp -v file.txt /path/to/destination/

Afficher des informations détaillées sur la copie.

8. Créer des liens matériels ou des liens symboliques

cp -l file.txt /path/to/destination/  # 创建硬链接
cp -s file.txt /path/to/destination/  # 创建符号链接

9. Copier plusieurs fichiers dans un répertoire

cp file1.txt file2.txt /path/to/destination/

Copier plusieurs fichiers dans le répertoire de destination.

10. Copier à l'aide de caractères génériques

cp *.txt /path/to/destination/

Copier tous les fichiers .txt dans le répertoire de destination.

11. Combiner avec la commande find pour copier des fichiers spécifiques

find /path/to/source -name "*.log" -exec cp {} /path/to/destination/ \;

Rechercher et copier tous les fichiers .log dans le répertoire de destination.

Ce qui précède ne représente que quelques utilisations courantes de la commande cp. Vous pouvez exécuter la commandeman cppour afficher plus d'options et d'utilisation.

Notes

  1. Si le chemin de destination est un répertoire,cple fichier ou le répertoire source sera copié dans ce répertoire.

  2. Si le chemin de destination est un nom de fichier,cple fichier source sera copié et renommé selon le nom du fichier de destination.

  3. Lors de la copie d'un répertoire, vous devez utiliser l'-rou-Roption, sinon une erreur sera signalée.

  4. Si le fichier de destination existe déjà, par défautcpil sera écrasé (sauf si l'-ioption est utilisée).

Linux 命令大全Référence des commandes Linux

Autres extensions