Enviado em 30/09/2009 - 01:43h
Boa noite amigos do forum
estou tentando"filtrar" um arquivo texto com mais de 900 linha e criar varios arquivos pequenos, poremarquivos organizados e que eu consigafazer calculos com ele.
O que eu preciso fazer é :
1° - Encontrar a astring "<H2>" e a string "<H3>" dentro do arquivo.
2° - O script copia as linhas entre as duas strings para o outro arquivo(arquivo de saida)
se a string "<H2>" estiver na linha 6 e a string "<H3>" estiver na linha 32, o arquivo de saida é criado contendo da linha 7 até a linha 31
3° - O nome do arquivo de saida está sempre na linha que começa com a strig "<H2>"
Exemplo de uma linha que começe com a string "<H2>" :
"<H2>82965 SBAT Alta Floresta (Aero) Observations at 12Z 12 Nov 1988</H2>"
Do 5° ao 9° caracter underline do 16° ao 28° caracter underline do 53° ao 67° caracter.txt
82965_Alta Floresta_12Z 12 Nov 1988.txt
4° - Como o arquivo matriz tem umas 900 linhas esse processo deve ser repetido até o arquivo matriz acabar.
5° - Na pasta onde o arquivo matriz está existem muitos arquivos, e o processo deve ser feito em todos eles(criar loop).
6° - Depois de terminar um arquivo o script deve passar para o proximo arquivo da pasta, e assim sucessivamente até acabar os arquivos da apasta.
[exemplo de arquivo matriz]
http://www.4shared.com/file/132893608/232e19eb/sounding_30_.html
A minha ideia foi criar um while dentro de um if usando o comando grep:
if grep ... pra achar a 1° string
while grep ... pra achar a segunda string
dai com o if o script acha a 1° string e começa a copiar as linhas para o arquivo de saida, e com o while o script vai testando se a 2°string está na proxima linha e enquanto ela não aparecer o script continua copiando as linhas para o arquivo de saida.
Desde já eu agradeço a ajuda de todos, e se o caminho q eu estiver seguindo for errado por favor me ajudem a achar um caminho certo
estou tentando"filtrar" um arquivo texto com mais de 900 linha e criar varios arquivos pequenos, poremarquivos organizados e que eu consigafazer calculos com ele.
O que eu preciso fazer é :
1° - Encontrar a astring "<H2>" e a string "<H3>" dentro do arquivo.
2° - O script copia as linhas entre as duas strings para o outro arquivo(arquivo de saida)
se a string "<H2>" estiver na linha 6 e a string "<H3>" estiver na linha 32, o arquivo de saida é criado contendo da linha 7 até a linha 31
3° - O nome do arquivo de saida está sempre na linha que começa com a strig "<H2>"
Exemplo de uma linha que começe com a string "<H2>" :
"<H2>82965 SBAT Alta Floresta (Aero) Observations at 12Z 12 Nov 1988</H2>"
Do 5° ao 9° caracter underline do 16° ao 28° caracter underline do 53° ao 67° caracter.txt
82965_Alta Floresta_12Z 12 Nov 1988.txt
4° - Como o arquivo matriz tem umas 900 linhas esse processo deve ser repetido até o arquivo matriz acabar.
5° - Na pasta onde o arquivo matriz está existem muitos arquivos, e o processo deve ser feito em todos eles(criar loop).
6° - Depois de terminar um arquivo o script deve passar para o proximo arquivo da pasta, e assim sucessivamente até acabar os arquivos da apasta.
[exemplo de arquivo matriz]
http://www.4shared.com/file/132893608/232e19eb/sounding_30_.html
A minha ideia foi criar um while dentro de um if usando o comando grep:
if grep ... pra achar a 1° string
while grep ... pra achar a segunda string
dai com o if o script acha a 1° string e começa a copiar as linhas para o arquivo de saida, e com o while o script vai testando se a 2°string está na proxima linha e enquanto ela não aparecer o script continua copiando as linhas para o arquivo de saida.
Desde já eu agradeço a ajuda de todos, e se o caminho q eu estiver seguindo for errado por favor me ajudem a achar um caminho certo