Como medir ou acompanhar o progresso de um comando em uma distribuição GNU?

1

Se eu correr

cp file1 file2

Eu gostaria de poder acompanhar seu progresso. Existe um comando que eu possa usar para isso?

rsync --progress

tem isso, mas existe algo genérico, utilizável para o comando "qualquer"?

    
por Felipe Alvarez 18.05.2010 / 10:10

3 respostas

6

Você pode usar pv para ver o progresso de qualquer comando que possa transferir dados por meio de pipes.

Ver, por exemplo, link para explicações. Isso não funcionará para o cp, no entanto, como ele não opera via pipes.

Além disso, não há nenhum mecanismo geral do qual conheço. Seria difícil, já que "progresso" pode significar coisas diferentes para comandos diferentes.

BTW, cp tem uma opção -v , que lista os arquivos à medida que são copiados, o que pode lhe dar uma ideia aproximada do progresso.

Editar:

Embora possa não responder diretamente à sua pergunta: você também pode usar apenas um gerenciador de arquivos gráfico. A maioria fornece uma boa barra de progresso ao copiar / mover arquivos (por exemplo, o konqueror do KDE).

    
por 18.05.2010 / 10:14
1

tente acrescentar --verbose aos comandos que lhe interessam, isso geralmente produzirá mais informações sobre o progresso.

    
por 18.05.2010 / 10:14
0

(Talvez não seja bem o que você está perguntando, uma vez que não funcionará para qualquer comando, mas) para obter um medidor de progresso para cp , eu às vezes (ab ) use scp :

scp localhost:/path/to/source_file /path/to/destination

Você precisará do prefixo "localhost:" na origem ou destino para que scp não retorne a um padrão cp .

    
por 18.05.2010 / 13:07