[Ubuntu-BR] Iterando sobre arquivos com shellscript

Tiago Passos tiago em tiagopassos.com
Segunda Janeiro 14 16:53:33 UTC 2013


 

Luciano, 

esse artigo deve te ajudar:
http://pt.wikinourau.org/bin/view/GrupoLinux/SlideProgramacaoShellScript
[3] 

Em 2013-01-14 11:25, luciano de souza escreveu: 

> Caros,
>
Desejo criar um Shellscript que realize as seguintes tarefas:
> 1. Lê um
arquivo de texto;
> 2. Separa-o em uma coleção de arquivos com número
determinado de linhas;
> 3. Coloca no início de cada arquivo, o nome do
arquivo-pai sem a
> extensão, mas seguido de um número sequencial.
> 
>
Este é o início para que consiga preparar um arquivo de texto para
>
conversão em audiolivro utilizando a síntese de voz do Espeak. Suponha
>
o seguinte comando:
> 
> audiobook -i "Os miseráveis.txt" -s 200
> 
>
Como resultado ele deveria produzir:
> 
> Os miseráveis01.txt
> Os
miseráveis02.txt
> Os miseráveis03.txt
> 
> No início, por exemplo, de
"os miseráveis03.txt", teríamos:
> 
> Os miseráveis03
> 
> {continuação
do texto de Os miseráveis02}
> 
> O que basicamente preciso saber para
construir este script? Ler
> arquivos, linha por linha verificando se um
contador é igual ao
> tamanho passado como parâmetro.
> 
> Entretanto,
não sei como iterar sobre as linhas de um arquivo
> utilizando
Shellscript. Se fosse Pascal, seria algo mais ou menos
> assim:
> 
>
var
> f: text;
> s: string;
> I: integer;
> 
> begin
> assign(f, 'Os
miseráveis.txt');
> reset(f)
> i := 0;
> while not eof(f) do
> begin
>
readln(f, s);
> { Fazer alguma coisa com "s"}
> inc(i);
> end;
>
close(f);
> end.
> 
> Muito provavelmente necessitarei de um bocado de
tentativas até que
> tenha o meu script de audiolivros pronto. O que
desejo é uma
> orientação sobre o que estudar afim de conseguir gerar
este script.
> Não estou certo se a minha pergunta é apropriada para
este grupo, mas
> não conheço grupos sobre shellscript.
>
Luciano

---
Tiago Passos
Analista de Suporte Linux
www.tiagopassos.com
[1]
@tiagopassos [2]
 

Links:
------
[1] http://tiagopassos.com
[2]
http://twitter.com/tiagopassos
[3]
http://pt.wikinourau.org/bin/view/GrupoLinux/SlideProgramacaoShellScript



More information about the ubuntu-br mailing list