Como ler um arquivo linha por linha em um shell script

Sua necessidade é pegar cada uma das linhas de um arquivo qualquer e executar uma acção para cada uma delas? Então vamos lá resolver este desafio?

Este script pega cada uma das linhas de um arquivo e executa um procedimento para cada uma delas. Vejamos os passos que usei para o compor.

Inicialmente mudei o valor da variável que guarda os valores do "separador interno de campos" IFS que por default o valor é:

[ espaço, tabulação, nova linha ]

Para algo como:

[ tabulação, nova linha ]

Pois não quero que meu laço de repetição - que irá ler a linhas do script - use o caractere de espaço como sendo um dos, - mais uma vez - separadores de campo interno. Isto quebraria as linhas de retorno em palavras: o conteúdo de cada uma das linhas seria uma única palavra.

A seguir gravamos o valor da variável IFS configurado inicialmente. Após feito isso, setamos seu valor para apenas "nova linha".

Feito isso basta ler cada uma das linhas do arquivo de entrada e as mostrar na tela. Para tanto foi usado a função/procedimento _doAnyAction. Isto facilitará colocar os seus próprios procedimentos dentro dela para serem executados, mais uma vez, para cada linha do arquivo.

Espero que tenha gostado e que pricipalmente este post lhe seja útil. Boa sorte!!!

Boa sorte!!!

Outros exemplos com IFS

http://sekysu.blogspot.com/2011/03/trabalhando-com-pastas-e-arquivos.html
http://sekysu.blogspot.com/2010/05/renomeando-arquvos-para-maiusculo.html

MUITA BOA SORTE!!!

Nenhum comentário:

Postar um comentário


Nos reservamos o total direito de publicar ou não os seus comentários sem quaisquer justificativas.