Zigotto <[EMAIL PROTECTED]> writes:

> Neste script, � preciso saber se uma string existe em um arquivo. A linha 
> disto seria
>
> grep -i $VAR ~/Arquivo.txt
>
> Como posso fazer uma linha que teste se isto foi verdade ou n�o ?
> Caso afirmativo, o script deve mostrar a linha encontrada, e perguntar se o 
> usu�rio confirma a exclus�o desta(s) linha(s).

Qual o shell que voc� est� usando?

Na maioria deles voc� pode usar um operador l�gico:

   instru��o1 && instru��o2


Em Perl (�, n�o resisto :o)):


LE_ARQUIVO: while (<$arquivo>) {
      $linha =~ /$var/;
      if ($linha) {
            print $linha if $linha;  # Repare que sem o \n pois a linha j�
                                     # deve cont�-lo... Se n�o tiver,
                                     # adicione. 
            print "Deseja remover esta linha? (Y/N ou S/N) ";
            $resposta = <>;
            chomp $resposta;
            if (($resposta =~ /y/i) || ($resposta =~ /s/i)) {
               next LE_ARQUIVO;
            }
      }
      print $arquivo $linha;
}


> O READ aguarda por um texto seguido de NETER. Tem algum comando que aguarda 
> por um �nico caracter ?

Melhor esperar pelo ENTER. Se o usu�rio digitar errado, ou ainda
estiver lendo, ou segurou a tecla, ou ela travou, ou... ele ainda ter�
que confirmar com o ENTER a a��o. 

> Como verificar se este caracter � igual a "S" ou "N" , independente de ser 
> min�sculo ou n�o ?

man <seu_shell_aqui>


Eu, por exemplo, faria: man zsh
Voc�, provavelmente: man bash



Sds,
-- 
Godoy. <[EMAIL PROTECTED]>

Solutions Developer       - Conectiva Inc. - http://en.conectiva.com
Desenvolvedor de Solu��es - Conectiva S.A. - http://www.conectiva.com.br

Attachment: msg35861/pgp00000.pgp
Description: PGP signature

Responder a