imprimir barra de progresso enquanto move arquivos para pasta com detalhes de arquivos e pastas

0

no meu script bash eu escrevi isso

echo "move file - $file to $folder  Start"
mv $file $folder
echo "move file - $file to $folder  Ended"
  • o arquivo está sob o sistema de arquivos - "/"
  • a pasta está sob o sistema de arquivos - "/ var"

para que o script seja impresso assim

move file - file.txt to archive  Start
move file - file.txt to archive  Ended

mas eu quero imprimir a saída, como esta (com "." que será impressa a cada 5 segundos como barra de progresso)

move file - file.txt to archive  start........end
move file - repo.txt to archive  start.....end
move file - list.txt to archive  start.............................end
    
por yael 28.08.2017 / 10:56

1 resposta

1

Você pode usar o rsync.

rsync --remove-source-files -P /src_folder/src_file /dst_folder/dst_file

--remove-source-files sender remove arquivos sincronizados (não-dirs)

-P progress

Saída será algo assim:

316,628,992 100%  132.31MB/s    0:00:02 (xfr#1, to-chk=0/1)
    
por 28.08.2017 / 11:24