Arquivos históricos do BR-Linux.org apresenta:

Não falta mais nada: 'cp' com barra de progresso

Notícia publicada por brain em agosto 25, 2004 11:34 PM | TrackBack


O NewsForge avisa sobre o lançamento do Tyler's File Commands, pacote extra para o Darwin que, entre outras coisas, acrescenta uma barra de progresso para o comando 'cp' em modo interativo - similar ao que alguns clientes de FTP fazem em modo texto já há algum tempo nas transferências de arquivos.Veja a screenshot e tente não olhar no calendário para ver se hoje não é primeiro de abril ;-) Segundo a notícia, o mod do cp já pode rodar nos BSDs. Quanto tempo até chegar no Linux?

 

Comentários dos leitores
(Termos de Uso)

» Enkhrypthor () em 26/08 00:45

Incrivel como as pequenas coisas fazem diferenca!!!


quando isso chegar para o linux eu finalmente poderei jogar no lixo meu scipr de copiar monitorado pelo watch!!!!!


haha mto bom!


» Esdras () em 26/08 01:12

O OpenDarwin é usável? Tem algum tipo de gerenciamento de pacotes? Tenho vontade de testá-lo...


» pksato () em 26/08 03:02

conhecem o vcp?
http://members.iinet.net.au/~lynx/vcp

Ter um feedback visual na copia de arquivos grandes e bem mais confortavel.


» Humberto Massa () em 26/08 06:32

Acho que usando o scp, para copiar arquivos grandes e locais, você ganha a barrinha para monitorar também (arquivo por arquivo). Não sei quanto a vocês, mas às vezes eu acho útil.


» jcarlos () em 26/08 09:27

cp do Linux já tem barra de progresso, tente copiar arquivos utilizando "cp -gv" se não me engano o parametro era -g mesmo, mas um cp --help resolve /p tirar a dúvida (no momento não tenho uma máquina linux /p verificar)


» Conrado () em 26/08 09:36

Eu acho que isso já devia vir build-in, será que é tão difícil fazer barra de progresso no cp, mv?


» Daniel Dantas () em 26/08 09:46

Na verdade, esse tipo de coisa já existe há algum tempo. Uma vez vi uma discussão a respeito do porquê não implementarem isso no cp. Sinceramente, não me lembro da resposta. O que me lembro era que existia um fork do código do cp que implementava a barra de progresso. Acho que ele não durou muito. Nunca mais ouvi falar disso.
De qualquer forma, estou mandando dois links de patchs para o fileutils que implementam a barra de progresso. Só aplicar o patch, compilar de novo e ser feliz.
http://lists.gnu.org/archive/html/bug-fileutils/2001-08/msg00028.html
http://www.mail-archive.com/bug-fileutils@gnu.org/msg00994.html


» Carlos Romel () em 26/08 09:46

Olá.

Um comando que faz o que foi solicitado é ideal. O padrão que temos nos acostumado com os anos é: Um comando só exibe algo quando há um erro, no caso de silêncio, entendemos sucesso.

Se queremos um modo mais "verbose", então deveriamos solicitar via parâmetros.

Ter que "cercar" o cp modificado (build-in) com > /dev/null nos roteiros e programas administrativos seria contraprodutivo.

Um abraço, paz e sucesso.

PS: Concordo com Humberto Massa. O (p)scp(*) pode ser um substituto vantajoso para o cp tradicional. A combinação rsync -e ssh é, na minha opinião, uma ótima forma de transportar arquivos entre os ambientes de rede.

(*) Além do scp fornecido pelo openssh-clients, também podemos usar o PSCP (da suite PuTTY).


» Elessar () em 26/08 09:51

Não achei referência ao parâmetro -g no --help e nem na manpage, jcarlos...


» Daniel Dantas () em 26/08 09:54

Outros patchs:
http://www.aichler.net/fileutils/
http://www.mail-archive.com/bug-coreutils@gnu.org/msg00610.html
Além disso, dá pra usar o scp, como o Humberto falou.
Agora, ninguém pode reclamar!!!
Ah, parece que algumas distribuições tem os programas já com os patchs, então uma boa pesquisada nas páginas manuais (man cp) pode ajudar. Se não resolver, já mostrei 4 patchs diferentes. Um deles tem que servir.


» Daniel Dantas () em 26/08 09:54

Outros patchs:
http://www.aichler.net/fileutils/
http://www.mail-archive.com/bug-coreutils@gnu.org/msg00610.html
Além disso, dá pra usar o scp, como o Humberto falou.
Agora, ninguém pode reclamar!!!
Ah, parece que algumas distribuições tem os programas já com os patchs, então uma boa pesquisada nas páginas manuais (man cp) pode ajudar. Se não resolver, já mostrei 4 patchs diferentes. Um deles tem que servir. No linux, o que você quer às vezes já foi feito por alguém. É só pesquisar.


» Roger de Almeida () em 26/08 10:04

Não é por nada não, mas se isso fosse extendido ao comando dd, facilitaria muita coisa, principalmente na clonagem de hd.

Falando nisso, que ferramenta é a mais indicada para clonar hd, mas que seja livre e o melhor, em modo texto?

Abraços
Roger


» Alexandre Arruda Paes () em 26/08 10:53

Caro Carlos Romel,

Segundo o screenshot, é necessário o uso de -vv para o progresso. Acredito que o comportamento padrão é o mesmo do cp "comum" e para ver o progresso devemos aumentar o verbose...


» Daniel Fonseca Alves () em 26/08 11:10

Já que tocaram no assunto do dd, deêm uma olhada nesta dd.
www.garloff.de/kurt/linux/ddrescue
dd__rescue vem com informações do progresso da cópia e é capaz de copiar HDs com problema de Bad Block.
Se vcs não sabem do que estou falando tentem clonar um hd com badblock e vcs vão ver o dd agarrar.


» jcarlos () em 26/08 13:02

Chegando em casa mais tarde irei verificar, estou utilizando o cp que vem /c o Gentoo por padrão, não sei se ele é modificado.


» Massa () em 26/08 13:28

Caro Roger,

existe uma ferramenta (agora eu não vou poder te dizer em qual pacote está porque estou preso no w98) que se chama dd_rescue.

Além de ter a famigerada barrinha de progresso :-P :-) tem também opções para "pular" ou "copiar como se fossem zeros" quando a origem for um "bad sector", etc. etc. etc. Eu usei esta semana e fiquei muito satisfeito.

Linha-de-comando, curses para a barrinha de progresso.

[]s,

Massa


» Johnny Storm () em 26/08 14:43

Flames On!

Daqui a pouco vão querer que VI tenha menus aparentes! Santa Paciência. Para que essa barrinha, já que sabemos que ela pode significar qq coisa.

Tem um site só erros do Windows e a grande maioria envolve essas malditas barrinhas.

Absolutamente desnecessário!

Ass Johnny Storm


» Henrique Vicente () em 26/08 16:23

Nada haver erro com barrinhas.. eu acho uma boa essa barrinha de uma forma que ela não apareça ao menos se a pessoa queira -b de bar por exemplo... ou se a distribuição for voltado ao usuário final e implementar isso num .bashrc algo assim.. aquele arquivo.. ah, vocês me entenderam..


» jcarlos () em 26/08 20:42

Galera, verifiquei aqui e o Linux já incluí cp /c barra de progresso sim, vou postar uma linha de "cp --help":

"-g, --progress show a progress bar if operation is going to take a long time"

e executando "cp --version":

"Report bugs to .
cp (coreutils) 5.2.1
Written by Torbjorn Granlund, David MacKenzie, and Jim Meyering."

Notem que a barra só é mostrada se a cópia de arquivos for demorar, e que a versão que estou utilizando do coreutils (pacote /c cp,mv,etc..) é a 5.2.1

Eu acho que a barra de progresso só tem utilidade se a cópia for demorar mesmo, assim não se fica naquela dúvida "será que está copiando mesmo? ou será que ocorreu algum travamento?". Esta opção foi muito boa quando eu estava copiando um arquivo de um cd riscado, ela me mostrou exatamente em qual parte do arquivo a cópia travava.

Outra coisa, essa barra do "cp -g" (ou "cp --progress") mostra o tempo estimado /p terminar a transferência do arquivo e a taxa de cópia, na screenshot /c o cp do darwin não aparece o tempo estimado.

Eu descobri esta opção quando estava fazendo uma iso usando "cp -gv /dev/cdrom arquivo.iso", estranhamente utilizando como parâmetro /dev/cdrom a barra não apareceu (bug?), porém utiliziando "cp -gvR /mnt/cdrom/* /diretorio" a barra apareceu enquanto cópiava um arquivo /c cerca de 400mb.

OFF: Também fica a dica, caso alguem queira fazer a iso de um cd-rom rapidamente é só abrir um console e digitar "cp /dev/cdrom arquivo.iso"


» ofranja () em 27/08 01:25

Olha, só diz que isso não tem utilizade ou acha "que não falta mais nada mesmo" quem nunca copiou um arquivo via VFS remoto, por exemplo, de/para um cliente/servidor sshfs/nfs/ftpfs. Ou também quem nunca fez uma cópia de 15gb, mesmo de HD->HD, e não ficou minutos/horas tentando adivinhar quando ia acabar aquela transferência interminável.

IMVHO, os programas userspace que trabalham com a API POSIX na área de sistema de arquivos deveriam estar preparados para demoras e falhas em qualquer ponto da operação, já que esta API é freqüentemente mapeada para servidores/clientes remotos. Exemplos não faltam, como os já citados acima. E um cp que não tenha suporte a esse tipo de coisa é um programa bugado que precisa ser corrigido.

E é isso.


» lilux () em 27/08 04:01

No mc (midnight commander, um gerenciador de arquivos em modo texto, o verdadeiro canivete suíço) há uma barrinha dessas quando copiamos arquivos ou movemo-os de um local ao outro. Apenas selecionar o arquivo ou arquivos e apertar F5 para copiar ou F6 para mover de um lado ao outro.


» Covarde de Mordor () em 27/08 14:19

Olha, jcarlos, eu estou usando o Fileutils 5.2.1 do Debian e quando dou -g ou --progress as mensagens são:

$ cp --progress X11-Basic-Manual.pdf teste/
cp: opção não reconhecida `--progress'
Tente `cp --help' para mais informação.

$ cp -gvR X11-Basic-Manual.pdf teste/
cp: opção inválida -- g
Tente `cp --help' para mais informação.

Portanto o seu fileutils deve ter sido patcheado pelo pessoal do Gentoo.


» jcarlos () em 27/08 18:50

Opsss.. de fato estava olhando o change-log da ebuild do coreutils e de fato está patchado, e faz bastante tempo:

*coreutils-5.0-r2 (24 Aug 2003)
24 Aug 2003; Seemant Kulleen coreutils-5.0-r2.ebuild: adds a patch to display a progress bar for mv and cp (when invoked with the -g option). Thanks to Haukkari in #gentoo for passing this on to us. The patch was authored by: Miika Pekkarinen

Bom.. usuários do gentoo já tem barra de progresso no cp e mv a mais de 1 ano =)


» David () em 29/08 02:30

Roger de Almeida:

Existe o Partition Image (www.partimage.org), que é um clone do Ghost. E roda em modo texto :)

O Carlos E. Morimoto tem um tutorial sobre ele: http://www.guiadohardware.info/tutoriais/084/

De lá: "O Partimage substitui o Ghost, com a vantagem de ser livre. Ele pode fazer imagens de partições do HD e até mesmo de HDs inteiros. É interessante tanto para fazer backup quanto para clonar HDs quando é necessário instalar o sistema em vários micros iguais"

Confira também o System Rescue CD (www.sysresccd.org), que é um Live CD com o Partition Image e várias outras ferramentas interessantes.
Destaco o QTParted (qtparted.sourceforge.net) que é um substituo perfeito do Partition Magic.

Abraços


Comentários desativados: Esta discussão é antiga e foi arquivada, não é mais possível enviar comentários adicionais.



O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação, layout, tabela de caracteres, etc.) o acervo de notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter de acervo, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.