Skip to content
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Avoir une barre de progression avec la commande cp sous Linux

Tu aurais voulu découvrir cette astuce avant tout le monde ? Alors rejoins-moi sur Patreon !

Sous Linux, ce qui est chiant quand on fait un « copier » (cp) en ligne de commande, c’est qu’on ne sait jamais où on en est…alors qu’avec Wget, on a une belle barre de progression qui donne l’avancement du téléchargement.Pour ceux que ça intéresse, voici le script qui va permettre d’avoir le même genre de barre de progression avec « cp ».. Il vous suffit de créer un fichier script avec ce qu’il y a ci-dessous dedans, de le nommer cp_p et de le copier dans /usr/bin

#!/bin/sh
cp_p()
{
   set -e
   strace -q -ewrite cp -- "${1}" "${2}" 2>&1 
      | awk '{
	    count += $NF
            if (count % 10 == 0) {
               percent = count / total_size * 100
               printf "%3d%% [", percent
               for (i=0;i<=percent;i++)
                  printf "="
               printf ">"
               for (i=percent;i<100;i++)
                  printf " "
               printf "]r"
            }
         }
         END { print "" }' total_size=$(stat -c '%s' "${1}") count=0
}

Ca donnera alors un truc comme ça lorsque vous copierez des fichiers en ligne de commande :

% cp_p /mnt/files/ubuntu.iso.iso /home/korben
 70% [=========================================>                      ]

Pratique non ?

Tu aimes ce site ?

Je mets tout mon cœur et toute mon énergie dans ce site depuis des années et si tu apprécies mon contenu, tu seras sûrement heureux ou heureuse d’apprendre que j’ai mis en place un soutien financier qui permet aux vrais de la première heure d’accéder en avant première aux contenus que je produis pour eux.

Tu auras accès à des vidéos, au groupe privé Discord, à ma veille techno exclusive et tu pourras échanger librement avec d’autres vrais fans.

On se voit de l’autre côté ?


Les articles du moment