GNU/Linux >> Tutoriels Linux >  >> Linux

gcp - Un utilitaire avancé de copie de fichiers pour Linux

La plupart d'entre vous ont remarqué que le cp la commande n'affichera pas la progression de la copie lors de la copie de fichiers/dossiers. Lorsque je copie un gros fichier avec cp commande, je n'ai vraiment aucune idée de combien de temps cela va prendre, ou quel est le pourcentage actuellement copié. À part regarder l'icône du curseur clignotant dans le terminal et l'indicateur du disque dur lors de la copie de fichiers volumineux, je n'ai aucune idée de la progression de la copie ou non. Pas plus! Voici où gcp utilitaire vient en aide. Le gcp (G cp d'offi ) est un outil de copie de fichiers avancé, fortement inspiré du traditionnel cp utilitaire de commande, mais avec quelques fonctionnalités supplémentaires. Il s'agit d'un logiciel entièrement gratuit et open source, publié sous licence publique générale GNU.

Contrairement au cp commande, l'utilitaire gcp offre les fonctionnalités de haut niveau suivantes :

  • Affiche l'indicateur de progression de la copie, avec le temps estimé, la vitesse actuelle du fichier, etc.
  • gcp continue de copier même en cas de problème. Il ignorera simplement le fichier problématique de la copie et copiera les fichiers suivants.
  • Il peut copier un ou plusieurs fichiers ou dossiers.
  • gcp enregistre toutes ses actions. Ainsi, nous pouvons facilement trouver les fichiers qui ont été copiés avec succès.
  • Si vous annulez accidentellement un processus de copie, il en conservera une trace. Au lieu de supprimer le contenu, il conservera le contenu partiellement copié. Vous pouvez ensuite relancer le processus de copie, et il copiera le reste des fichiers là où vous l'avez laissé.
  • Si vous lancez une copie alors qu'une autre est déjà en cours d'exécution, les fichiers sont ajoutés à la première file d'attente, cela évite à votre disque dur de bouger sa tête de lecture/écriture en permanence.
  • Vous pouvez enregistrer une liste de fichiers que vous avez copiés et les recopier ultérieurement à partir de cette liste. Il sera très utile lorsque vous souhaitez copier les mêmes fichiers vers plusieurs cibles.
Téléchargement recommandé - Cheat Sheet gratuit :"Vim Cheat Sheet"

Dans ce bref guide, je vais vous montrer comment installer et gcp sous Linux et les systèmes d'exploitation de type Unix.

Installer gcp sous Linux

gcp est disponible dans les dépôts par défaut de Debian et Ubuntu. Vous pouvez installer en exécutant simplement la commande suivante depuis le Terminal :

$ sudo apt-get install gcp

Pour Arch Linux, et ses dérivés, il est disponible en AUR. Ainsi, vous pouvez l'installer à l'aide de n'importe quel assistant AUR, par exemple Yay .

$ yay -S python-gcp-git

Ensuite, installez le python-progressbar package, qui est utilisé pour afficher la barre de progression lors de la copie de fichiers.

$ yay -S python-progressbar

gcp est également disponible sur PyPI, vous pouvez l'installer avec le gestionnaire de paquets Pip comme ci-dessous :

$ pip3 install gcp

Et, enfin, installez python-progressbar.

Debian/Ubuntu :

$ sudo apt-get install python-progressbar

Comment utiliser gcp, le copieur de fichiers avancé, sous Linux

L'utilisation de gcp est à peu près la même que celle de la commande cp.

L'utilisation typique de gcp est :

gcp [OPTIONS] FILE DEST
gcp [OPTIONS] FILE1 [FILE2...] DEST-DIR

Laissez-moi vous montrer quelques exemples pratiques. La commande suivante copiera le contenu de Dir1 dans un répertoire appelé Dir2 .

$ gcp Dir1/video.mp4 Dir2/

Exemple de résultat :

Copying 876.53 MiB 100% |############################| 30.08 MB/s Time: 0:00:30

Comme vous le voyez dans la sortie ci-dessus, la commande gcp affiche l'indicateur de progression de la copie, avec le temps estimé, la vitesse actuelle du fichier, etc. Cela nous permettra de trouver facilement ce qui se passe réellement.

Pour copier plusieurs fichiers, il suffit de les spécifier l'un après l'autre et le répertoire cible comme ci-dessous.

$ gcp file1 file2 Dir

Pour copier un dossier dans un autre dossier, utilisez -r drapeau comme ci-dessous.

$ gcp -r Dir1/ Dir2/

Si vous ne voulez pas voir la barre de progression, vous pouvez la désactiver en utilisant --no-progress drapeau.

$ gcp --no-progress source destination

Si le dossier cible contient déjà le même fichier, vous obtiendrez le message d'avertissement suivant :

File [/home/sk/Dir2/video.mp4] already exists, skipping it !
/!\ THE FOLLOWING FILES WERE *NOT* SUCCESSFULY COPIED:
 - /home/sk/Dir1/video.mp4
--

Please check journal: /home/sk/.gcp/journal

Vous pouvez vérifier le fichier journal si le processus de fichier précédent s'est terminé avec succès ou non.

$ cat /home/sk/.gcp/journal

Sortie :

/home/sk/Dir1/video.mp4
OK:

Si la sortie est OK , le processus de copie est un succès. Si le résultat est PARTIEL , Cela signifie que le fichier a été copié, mais quelque chose s'est mal passé (par exemple, la modification des autorisations du fichier). ÉCHEC signifie - le fichier n'a pas été copié.

Pour plus de détails sur l'utilitaire gcp, exécutez la commande suivante :

$ gcp --help

Ou consultez les pages de manuel.

$ man gcp

Mise à jour :

La barre de progression pour cp et mv les commandes peuvent être facilement ajoutées à l'aide d'un correctif nommé "Advanced Copy" . Pour plus de détails, consultez le lien suivant.

Copie avancée - Ajouter une barre de progression aux commandes cp et mv sous Linux


Linux
  1. Commande Linux wc expliquée pour les débutants (6 exemples)

  2. 5 astuces rsync avancées pour les administrateurs système Linux

  3. Étapes de sécurité avancées pour Linux

  4. copier le fichier de Windows vers Linux

  5. Copie de fichier Linux avec ETA ?

10 exemples de commandes Linux Cat pour les débutants

Tutoriel de commande Linux df pour les débutants (8 exemples)

Tutoriel de commande Linux xz pour les débutants (7 exemples)

Tutoriel de commande de fichier Linux pour les débutants (5 exemples)

Commande ls sous Linux pour lister les fichiers

Fichier de copie Linux - Linux CP Made Easy!