[Ubuntu-BR] Iterando sobre arquivos com shellscript

Licio Fonseca licio em ubuntu.com
Sábado Janeiro 26 18:08:10 UTC 2013


Humberto,

A pergunta foi sua? Eu respondi a sua duvida? Com base em que você diz que
eu não li a mensagem?
Você acha que fazer o script pro cara é mais construtivo do que responder a
pergunta base dele?
"Entretanto, não sei como iterar sobre as linhas de um arquivo
utilizando Shellscript"

Deixe ele decidir o que é melhor para ele e evite mandar respostas inuteis
como a sua à minha mensagem.




2013/1/26 Humberto Fraga <xisberto em gmail.com>

> Licio, sugiro responder com base na mensagem inteira, e não apenas no
> título dela. Às vezes o ímpeto de ajudar é grande, mas uma leitura com
> calma evita respostas menos construtivas.
> Em 25/01/2013 19:01, "Licio Fonseca" <licio em ubuntu.com> escreveu:
>
> > while read p; do
> >   echo $p
> > done < miseravis.txt
> >
> > ou
> >
> > for linha in $(cat miseraveis.txt); do <o que vc quer fazer>;  done
> >
> >
> > 2013/1/25 Licio Fonseca <liciofernando em gmail.com>
> >
> > > for linha in $(cat miseraveis.txt); do <o que vc quer fazer>;  done
> > >
> > >
> > > 2013/1/14 luciano de souza <luchyanus em gmail.com>
> > >
> > >> 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
> > >>
> > >> --
> > >> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> > >>
> > >> Lista de discussão Ubuntu Brasil
> > >> Histórico, descadastramento e outras opções:
> > >> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > >>
> > >
> > >
> > >
> > > --
> > > Licio Fonseca
> > > http://www.licio.eti.br
> > > https://profiles.google.com/liciofernando
> > >
> > >
> >
> >
> > --
> > Licio Fonseca
> > Ubuntu Member
> > http://launchpad.net/~licio
> > licio AT ubuntu.com - US:1-678-701-LICI
> > --
> > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> >
> > Lista de discussão Ubuntu Brasil
> > Histórico, descadastramento e outras opções:
> > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> >
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>



-- 
Licio Fonseca
Ubuntu Member
http://launchpad.net/~licio
licio AT ubuntu.com - US:1-678-701-LICI



More information about the ubuntu-br mailing list