Fórum Ubuntu Linux - PT

Área para Iniciantes => Iniciantes => Tópico iniciado por: clebertadeu em 02 de Janeiro de 2010, 02:00

Título: Barra de progresso no comando CP ou MV
Enviado por: clebertadeu em 02 de Janeiro de 2010, 02:00
eh possível visualizar o progresso de copia o movimentação de um arquivo?
Ex. quero mover um diretório recursivamente para outro local e gostaria de acompanhar o progresso desta movimentação.

se é possível, como faço?
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: niquelnausea em 02 de Janeiro de 2010, 10:38
Com o Ctrl + c e Ctrl +v aparece uma janelinha mostrando o progresso.
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: clebertadeu em 02 de Janeiro de 2010, 16:54
Com o Ctrl + c e Ctrl +v aparece uma janelinha mostrando o progresso.
hum... isso eu acho que ja testei, sou novato no linux mas nem tanto! Gostaria de saber se existe a possibilidade disso acontecer no terminal semelhante ao que o comando apt-get faz pra baixar pacotes.
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: agente100gelo em 02 de Janeiro de 2010, 19:59
Nem sabia que dava pra fazer, mas uma pergunta no Google trouxe a sua solução:
http://chris-lamb.co.uk/2008/01/24/can-you-get-cp-to-give-a-progress-bar-like-wget/
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: Alyscom em 02 de Janeiro de 2010, 21:30
Nem sabia que dava pra fazer, mas uma pergunta no Google trouxe a sua solução:
http://chris-lamb.co.uk/2008/01/24/can-you-get-cp-to-give-a-progress-bar-like-wget/
Que massa!!!  :)
Muito bom mesmo, já fiz isso aqui no meu!!
[edit] Não funcionou!! Tem como dar um resumo?? é que não entendi uma parte lá!! :P


[]'s


Alyscom
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: clebertadeu em 02 de Janeiro de 2010, 23:11
Nem sabia que dava pra fazer, mas uma pergunta no Google trouxe a sua solução:
http://chris-lamb.co.uk/2008/01/24/can-you-get-cp-to-give-a-progress-bar-like-wget/

sou iniciante, nunca criei um comando no .sh do linux, é possível fazer um passo-a-passo pra o iniciante aqui? Obrigado pela resposta, era isso mesmo que eu queria
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: sboorbou em 03 de Janeiro de 2010, 09:46
se usar a opção -v durante a cópia, ele escreve a saída ( não é uma barrinha com %, mas mostra arquivo por arquivo que ta copiando...)
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: alarcon em 03 de Janeiro de 2010, 10:42
Nem sabia que dava pra fazer, mas uma pergunta no Google trouxe a sua solução:
http://chris-lamb.co.uk/2008/01/24/can-you-get-cp-to-give-a-progress-bar-like-wget/
Que massa!!!  :)
Muito bom mesmo, já fiz isso aqui no meu!!
[edit] Não funcionou!! Tem como dar um resumo?? é que não entendi uma parte lá!! :P


[]'s


Alyscom


Aqui no meu teste funcionou, mas só para aquivos e não pastas com conteúdo dentro.

Agora eu fiz uma alteração no script que inicialmente estava assim:

Citar
#!/bin/sh
cp_p()
{
   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
}

Alterei para:

Citar
#!/bin/sh
function cp_p
{
   strace -q -ewrite cp -R -- "${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
}


A mudança que fiz para funcionar eu destaquei em negrito.

Dei permissão de execução ao script (chmod +x nome_do_script) criado e digitei:

./nome_do_script "origem" "destino"

e funcionou só que a barra de progresso não fica totalmente na horizontal indo da esquerda para a direita e sim igual quando se baixa o flash, mais ou menos assim:

1%|==>
2%|===>
3%|====>

e assim por diante.
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: clebertadeu em 03 de Janeiro de 2010, 19:17
blza alarcon,, consegui fazer seguindo seus procedimentos, achei interessante mas visualmente feio! Bom se n'ao tiver mais nenhuma contribuição me dou por satisfeito
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: Alyscom em 04 de Janeiro de 2010, 03:45
Olá!! :D
Ao invés de usar => poderiamos usar ▬► ou •», sei láh... Aqui (http://yungy-gmdm.blogspot.com/2009/01/altnumeros-do-canto.html) tem mais símbolos legais!! ;)



[]'s



Alyscom
Título: Re: Barra de progresso no comando CP ou MV
Enviado por: Alyscom em 04 de Janeiro de 2010, 04:13
Queria que o meu ficasse assim!! *-* heheh

2.69MB.............................................0:00:00 |70.3MB/s|
|██████████████████████▓▒░  87% |



[]'s


Alyscom
Título: Re: Barra de progresso no comando CP ou MV [Resolvido]
Enviado por: clebertadeu em 05 de Janeiro de 2010, 00:13
bom consegui um script pesquisando na internet para resolver meu problema. O comportamento dele ainda não esta 100% do meu gosto mas ja melhorou 70% do que estava antes...

Baixando o arquivo com os comandos pré compilados
Código: [Selecionar]
$ wget http://clebertadeu.com/linux/cmdbar.tar
faça um backup dos comandos cp, mv e rm (caso de algum zulu.. hehe)
Código: [Selecionar]
$ sudo tar -cvvf ~/bin.tar /bin/cp /bin/mv /bin/rm
descompactando o arquivo com os comandos modificados na pasta /bin
Código: [Selecionar]
$ sudo tar xvf cmdbar.tar -C /bin
crie um alias para "cp=cp -B" se achar necessário se não, quando for utilizar os comandos cp, mv ou rm só setar o flag "-B" Ex.:
Código: [Selecionar]
$cp -B /home/usuario/Documentos/CD.iso /home/usuario/Imagens_cd
$ CD.iso  51% |******************                  | 783 MB 00:14

só isso.
Valeu galera que contribuiu e ajudou a resolver mais este pequeno probleminha