Uma das coisas que as vezes ficamos na dúvida é quando iniciamos um comando para mover arquivos ou pastas no Linux e não sabemos ao certo quanto tempo vai demorar, principalmente quando são pastas ou arquivos grandes.
O comando mv é a ferramenta mais usada para mover arquivos no Linux. No entanto, por padrão, ele não tem a capacidade de mostrar o progresso ao usuário. Às vezes, quando movemos arquivos muito grandes, precisamos de algum tipo de indicador que possamos usar para acompanhar o progresso da operação de movimentação.
Vou deixar uma dica aqui para mover arquivos e ver seu progresso em um terminal usando diversas alternativas ao comando mv do Linux.
progress é uma ferramenta UNIX que nos permite monitorar o progresso de uma operação de cópia ou movimentação. Normalmente, usamos para mover um arquivo ou diretório e, em seguida, usamos o progress em outro terminal para monitorar o progresso.
Instalação
Debian / Ubuntu
apt install progress
RHEL / Oracle Linux / Fedora / CentOS
yum install progress
Arch e seus derivados:
pacman -S progress
Um exemplo de uma pasta sendo movida
$ mv ~/.cache /tmp
Abra uma outra sessão do terminal e digite o comando progress para acompanhar o progresso.
$ progress
[ 5187] mv /home/dias/.cache/paru/clone/android-studio/android-studio-2020.3.1.26-linux.tar.gz
0.0% (0 / 935.2 MiB)
Para monitorar o progresso utilize com o parâmetro -mw
$ [ 5251] mv /home/hey/.cache/paru/clone/amdgpu-pro-installer/amdgpu-pro-21.30-1290604-ubuntu-20.04.tar.xz
35.31% (241.3 / 683.2 MiB) 0/s