shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Leitura de Arquivo


From: Karin Klayton Schiochet
Subject: Re: [shell-script] Leitura de Arquivo
Date: Thu, 16 Oct 2008 09:30:32 -0300

Senhores,

Eu fiz um teste conforme repassaram nas dicas de de verta forma deu
certo;

Vai exemplo:
=========================================
arq1.txt
ITEM CAMPO_1 CAMPO_2 CAMPO_3
01 qwerty aqwer qweryt
02 qwerty1 qwerr qerttyd
03 qwerty3 qewrtr qetroip
04 qwerty4 qetrt qçlkwteç

FIM DO ARQUIVO

ITEM CAMPO_1 CAMPO_2 CAMPO_3
01 qwerty aqwer qweryt
02 qwerty1 qwerr qerttyd
03 qwerty3 qewrtr qetroip
04 qwerty4 qetrt qçlkwteç
=========================================

Código;
  1 #!/bin/bash
  2 #
  3 VAR="FIM DO ARQUIVO"
  4 VAR2="Station MAC, First time seen, Last time seen, Power, #
packets, BSSID, Probed ESSIDs"
  5 VAR3="Station MAC,"
  6 while read linha;
  7 do
  8         if ! [ "$linha" = "$VAR" ]; then
  9         
 10         echo $linha
 11         else
 12                 exit 1
 13         fi      
 14 done < arq.txt 

Neste exemplo ocorreu corretamente, ele parou na linha em que queria que
parasse e assim é possível tratar de forma adequada.

Agora quando coloco outro arquivo que é o que eu estou tentando fazer o
programa para ele, o mesmo não esta funcionando, ele não para na linha
correta.

============================================================
BSSID, First time seen, Last time seen, channel, Speed, Privacy, Cipher,
Authentication, Power, # beacons, # IV, LAN IP, ID-length, ESSID, Key
00:02:6F:3A:97:C1, 2008-10-09 19:19:40, 2008-10-09 19:19:43, 11,   5,
WEP , WEP,   ,   0,        7,        6,   0.  0.  0.  0,   0, , 
00:1C:10:54:4C:19, 2008-10-09 19:19:40, 2008-10-09 19:19:43, 11,  54,
WPA , TKIP,PSK,   0,        3,        0,   0.  0.  0.  0,  14,
familiaIKETANI, 
00:0A:52:00:E8:C9, 2008-10-09 19:19:40, 2008-10-09 19:19:41,  8,  11,
WEP , WEP,   ,   0,        7,        3,   0.  0.  0.  0,   4, WIND, 
00:18:39:60:E0:3B, 2008-10-09 19:19:43, 2008-10-09 19:19:43,  6,  54,
WPA , CCMP,PSK,   0,        2,        0,   0.  0.  0.  0,   9,
linksysSM, 

Station MAC, First time seen, Last time seen, Power, # packets, BSSID,
Probed ESSIDs
00:16:6F:A4:AB:21, 2008-10-09 19:19:40, 2008-10-09 19:19:43,   0,
66, (not associated) ,
00:0B:6B:4F:7C:8F, 2008-10-09 19:19:42, 2008-10-09 19:19:42,  -1,
1, 00:02:6F:3A:97:C1,
00:12:0E:59:EB:7E, 2008-10-09 19:19:42, 2008-10-09 19:19:43,  -1,
4, 00:02:6F:3A:97:C1,
00:02:6F:3A:96:72, 2008-10-09 19:19:43, 2008-10-09 19:19:43,  -1,
1, 00:02:6F:3A:97:C1,
00:15:AF:8F:5C:36, 2008-10-09 19:19:43, 2008-10-09 19:19:43,   0,
7, (not associated) , aberto

=========================================================
è o mesmo código modificando a variável para VAR2.

Puts pior que depois que eu copiei o código para o e-mail ocorreu de
aparecer estes símbolos no final de cada linha, sera por esse motivo que
ele não esta funcionando.

Atenciosamente,
Karin Klayton 

Em Qui, 2008-10-16 às 08:04 -0400, Édnei Rodrigues escreveu:
> É, bem lembrado. Você quer ler o arquivo,
> 
> Logo:
> 
> Cat arquivo.txt | while read linha do
> 
> Pronto, assim ele pega linha por linha, até o final. A variável
> "linha" é a
> que guarda a linha do arquivo lida.
> 
> 2008/10/16 Humberto Cruz <address@hidden>
> 
> > Karin, me parece que o comando read só irá ler a primeira linha do
> > arquivo. Deve ter outra forma de fazer o que voce quer, se puder
> > explicar melhor o que deseja...
> >
> > []s
> > Humberto
> >
> > 2008/10/16 Édnei Rodrigues
> <address@hidden<ednei.felipe.rodrigues%40gmail.com>
> > >:
> >
> > > Qual é o erro que aparece? Qual é a saída ?
> > >
> > > if ! [ $linha = $VAR ]
> > >
> > > Isso não é entre aspas duplas ?
> > > if ! [ "$linha" = "$VAR" ]
> > >
> > > 2008/10/15 Karin Klayton Schiochet
> <address@hidden<karinklayton%40gmail.com>
> > >
> > >
> > >> Senhores,
> > >>
> > >> Fazendo uma rápida apresentação, meu nome é Karin Klayton, sou
> > >> Administrador de Redes e moro em Belém/Pa. Sou novo no grupo e
> tenho
> > >> lido bastante material a respeito de shell-script e já fiz alguns
> > >> programas bem legal em shell-script.
> > >>
> > >> A minha duvida é a seguinte, estou tentando via shell-script ler
> uma
> > >> arquivo que é gerado de um programa em execução, e guardar linha
> a linha
> > >> para poder tratar os dados.
> > >>
> > >> Fiz algumas coisas mais até o momento não tive sucesso.
> > >> Exemplo: arquivo.txt
> > >> ITEM CAMPO_1 CAMPO_2 CAMPO_3
> > >> 01 qwerty aqwer qweryt
> > >> 02 qwerty1 qwerr qerttyd
> > >> 03 qwerty3 qewrtr qetroip
> > >> 04 qwerty4 qetrt qçlkwteç
> > >>
> > >> FIM DO ARQUIVO
> > >>
> > >> ITEM CAMPO_1 CAMPO_2 CAMPO_3
> > >> 01 qwerty aqwer qweryt
> > >> 02 qwerty1 qwerr qerttyd
> > >> 03 qwerty3 qewrtr qetroip
> > >> 04 qwerty4 qetrt qçlkwteç
> > >>
> > >> O que testei até o momento:
> > >>
> > >> VAR="FIM DO ARQUIVO"
> > >> while read linha;
> > >> do
> > >> if ! [ $linha = $VAR ]
> > >> echo $linha
> > >> fi
> > >> done < arquivo.txt
> > >>
> > >> Tentei algumas variantes seguindo esta linha do if tentando
> comparar com
> > >> a var que será constante mais não consegui.
> > >>
> > >> Agradeço qualquer informação mesmo que seja indicando material
> para
> > >> estudar.
> > >>
> > >> Um grande abraço a todos,
> > >>
> > >> --
> > >> Karin Klayton Schiochet
> > >> address@hidden <karinklayton%40gmail.com> <karinklayton%
> > 40gmail.com>
> > >> Tel: (91) 8121-5809
> > >>
> > >>
> > >>
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > 
> >
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
> 
> 
> 
>  
-- 
Karin Klayton Schiochet
Administrador de Redes
address@hidden
Tel: (91) 8121-5809



reply via email to

[Prev in Thread] Current Thread [Next in Thread]