Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: screenshot do Ubuntu
Por wavemmx
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

O comando YES
Linux user
Publicado por Frederico Madeira em 02/01/2009

Login: fred_m, 58309 pontos
[ Hits: 3293 ]

O comando YES

O yes é um programa que é instalado pelo pacote coreutils e sua função é retornar repetidamente um caractere ou ainda uma expressão de forma repetida até que o processo seja morto.

Você já tentou copiar/mover milhares de arquivos de uma pasta para outra onde na pasta de destino já existam uma parte destes arquivos? Pois é, ao tentar fazer isso, ele irá perguntar se você deseja sobrescrevê-lo. Procurei vários argumentos dos comandos cp e mv e não encontrei uma forma de usar o yes to all (sim para todos).

Para minha sorte o Linux traz uma solução muito criativa que pode ser usada para este e para outros casos, é o comando yes.

Este comando foi criado para repetir caracteres ou expressões repetidamente até que seja morto. Se utilizado sem nenhuma expressão, ele retornará y.

Por exemplo:

$ yes

Retornará seqüências de y.

$ yes n

Retornará seqüências de n.

Desta forma, se quisermos o equivalente ao yes to all, podemos usar o seguinte comando:

$ yes | cp -R /dir1 /dir2

ou ainda se quisermos no to all:

$ yes n | cp -R /dir1 /dir2

Abraços.

Frederico Madeira
www.madeira.eng.br


Outras dicas deste autor
Nenhuma dica encontrada.

Leitura recomendada
   Dica Linux recomendada O porquê de se usar software livre
   Dica Linux recomendada Aprenda Linux sem gastar nada, inclusive LPI
   Dica Linux recomendada Instalando Kernel 2.6.39.2 no Slackware 12
   Dica Linux recomendada Instalação Multifuncional Lexmark x1270
   Dica Linux recomendada Instalando fácil o Compiz-Fusion 0.7.4 no Slackware 12.1 sem dores de cabeça

Comentários
[1] Comentário enviado por alessandro_ufms em 02/01/2009 - 12:07h:

O que pode estar acontecendo é que o sistema possui um alias para os comandos cp e mv com o parametro -i. Sem esse parametro o cp nem o mv pergunta se quer sobre-escrever os arquivos.

[2] Comentário enviado por eldermarco em 02/01/2009 - 12:18h:

De qualquer maneira, é um comando interessante. Vlw pela dica.



[3] Comentário enviado por pedroarthur.jedi em 04/01/2009 - 16:23h:

O cp tem o parametro -f para esses casos...

O yes consome um bom tempo de processamento, sendo usado para testar MacBooks que esquentavam muito... http://web.archive.org/web/20070210135333/http://techpaedia.com/apple/2006/08/27/testing-your-macboo...


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.