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 ?