Commandes Linux

Maîtriser la commande Linux Copy File avec des exemples

Maîtriser la commande Linux Copy File avec des exemples
Sur n'importe quel système d'exploitation, la copie de fichiers et de répertoires est l'une des actions les plus courantes qu'un utilisateur effectue. Sur la ligne de commande Linux, vous pouvez apprendre l'utilisation appropriée de la commande cp pour personnaliser et maîtriser la copie de fichiers en fonction de vos besoins. Dans cet article, nous expliquerons l'utilisation de la commande Linux cp en présentant quelques exemples utiles.

Nous avons exécuté les commandes et les exemples mentionnés dans cet article sur un système Debian 10 Buster mais vous pouvez les répliquer sur presque toutes les distributions Linux.

La ligne de commande Linux, le Terminal, est facilement accessible via l'Application.  Lancez la recherche comme suit :

Exemple 1 : Copier un seul fichier dans un répertoire cible

L'utilisation la plus simple de la commande cp est de copier un seul fichier source dans un répertoire cible. Voici la syntaxe que vous pouvez utiliser pour cela :

$ cp fichier source /cible/répertoire

Exemple:

Dans cet exemple, je copie un fichier nommé sample_file.txt dans mon dossier Documents :

Plus tard, j'ai vérifié la présence du fichier dans le dossier cible via la commande ls.

Exemple 2 : Copie de plusieurs fichiers dans un répertoire cible

Avec la commande cp, vous pouvez copier plusieurs fichiers dans un répertoire cible en utilisant la syntaxe suivante :

$ cp fichiersource1 fichiersource2 fichiersource3…   /cible/répertoire

Exemple:

Dans cet exemple, je copie deux exemples de fichiers dans mon dossier Documents via la commande cp :

Plus tard, j'ai vérifié la présence de ces fichiers dans le dossier cible via la commande ls.

Exemple 3 : Copie de fichiers de manière interactive

Si un fichier du même nom existe dans votre dossier cible, vous pouvez utiliser la commande cp pour vous demander avant d'écraser le fichier cible. Vous pouvez utiliser le commutateur -i de la manière suivante :

$ cp -i fichier source /cible/répertoire

Exemple:

Dans cet exemple, un fichier nommé sample_file.txt existe déjà dans mon dossier Documents, donc la commande cp, avec l'indicateur -i, me demande si je veux l'écraser. Le fichier sera écrasé si j'entre y à cette invite.

Exemple 4 : Copie de fichiers avec une sortie Verbose

Une sortie détaillée imprime ce que fait la commande. Cela peut être incorporé dans la commande cp avec le commutateur -v comme suit :

$ cp -v fichier source /cible/répertoire

Exemple:

Vous pouvez voir dans l'exemple suivant comment la commande cp imprime une sortie détaillée lors de la copie d'une commande :

Exemple 5 : Copier un répertoire de manière récursive

L'utilisation de l'option -r avec la commande cp copie de manière récursive tous les fichiers et dossiers d'un répertoire vers un autre emplacement. Voici comment vous pouvez utiliser la commande cp dans ce scénario :

$ cp -r répertoire1 répertoire2

Exemple:

Dans l'exemple suivant, l'intégralité du dossier 1, avec tous ses fichiers, sera copié dans le dossier 2.

J'ai ensuite vérifié le contenu de folder2 via la commande ls. Le dossier2 contient maintenant une copie du dossier source.

Exemple 6 : Copier un répertoire de manière récursive tout en conservant une archive

En utilisant le commutateur -a avec la commande cp, vous pouvez faire deux choses à la fois :

Voici comment vous pouvez utiliser la commande cp dans ce scénario :

$ cp -a répertoire1 répertoire2

Exemple:

Dans l'exemple suivant, tout le dossier 1, avec tous ses fichiers, sera copié dans le dossier 2. De plus, les fichiers seront archivés comme vérifiés ultérieurement via la commande 'ls -l'.

Exemple 7 : copier un fichier au cas où il serait plus récent que le fichier cible

Parfois, vous souhaitez copier un fichier dans le répertoire cible uniquement s'il est plus récent que le fichier cible. Cela peut être fait en utilisant le commutateur -u avec la commande cp :

$ cp -u fichiersourceOUrépertoiresource /cible/répertoire

Exemple:

Dans cet exemple, j'ai édité un fichier sample_file.txt de mon dossier source. Ces fichiers ont déjà été copiés dans le dossier cible avant que je modifie le fichier. Cela peut être vu dans la sortie suivante de la commande 'ls -l' :

Maintenant, lorsque j'ai copié le dossier source dans le dossier cible, la sortie détaillée a vérifié que seul ce fichier sera copié qui a été modifié par moi.

Exemple 8 : Copiez un fichier mais ne l'écrasez pas si un fichier cible existe déjà

Vous pouvez dire à la commande cp de ne pas écraser le fichier s'il existe déjà dans l'emplacement cible. Cela peut être fait via le commutateur -n comme suit :

$ cp -n fichier source /cible/répertoire

Exemple:

Dans cet exemple, j'ai d'abord essayé de copier un fichier à l'emplacement cible où il existait déjà. Le commutateur -i m'a demandé si je veux l'écraser.

Dans la deuxième commande, j'ai ajouté le commutateur -n. Il a ignoré le commutateur -i mais n'a pas écrasé le fichier déjà existant dans le répertoire cible.

Exemple 9 : Créer un lien symbolique vers un fichier dans le répertoire cible

Avec le commutateur -s dans la commande cp, vous pouvez créer un lien symbolique vers le fichier source dans le dossier cible au lieu de copier le fichier source.

$ cp -s fichier source /cible/répertoire

Exemple:

Dans l'exemple suivant, j'ai créé un lien symbolique vers le fichier sample_file.txt dans le dossier cible.

J'ai vérifié plus tard la présence du lien symbolique dans le dossier cible via la commande 'ls -l'.

Exemple 10 : Créer un lien physique vers un fichier dans le répertoire cible

Lorsque vous créez un lien physique vers un fichier dans un autre dossier, le fichier n'est pas copié dans le dossier cible ; à la place, un lien physique vers le fichier source est créé. Le numéro d'inode du fichier source et du lien physique copié est le même. Voici comment créer un lien physique :

$ cp -l fichier source /cible/répertoire

Exemple:

Dans cet exemple, j'ai créé un lien physique vers le fichier source dans le dossier Documents.

Grâce à la commande 'ls -il', j'ai vérifié que le fichier d'origine et le lien physique ont les mêmes numéros d'inode.

C'était tout ce que vous deviez savoir pour maîtriser la commande cp sous Linux. En utilisant une combinaison de ces commutateurs, vous pouvez rendre la copie de fichiers beaucoup plus personnalisable.

Comment développer un jeu sur Linux
Il y a dix ans, peu d'utilisateurs de Linux prédisaient que leur système d'exploitation préféré serait un jour une plate-forme de jeu populaire pour l...
Ports Open Source des moteurs de jeux commerciaux
Les récréations de moteur de jeu gratuites, open source et multiplateformes peuvent être utilisées pour jouer à d'anciens ainsi qu'à certains des titr...
Meilleurs jeux de ligne de commande pour Linux
La ligne de commande n'est pas seulement votre plus grand allié lorsque vous utilisez Linux, elle peut également être une source de divertissement car...