[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Usar teste para, caso verdadeiro, gerar variável e ro
From: |
Eri Ramos Bastos |
Subject: |
Re: [shell-script] Usar teste para, caso verdadeiro, gerar variável e rodar comandos que usam a variável |
Date: |
Mon, 18 Oct 2010 20:06:27 -0300 |
Só um patch rápido:
http://pastebin.com/KjtAJ4dL
[]'s
Eri Ramos Bastos
2010/10/18 Helton Moraes <address@hidden>:
> Caros colegas
>
> Hoje criei um programinha pra facilitar minha vida de
> procurador-de-coisas-em-um-monte-de-pdf. O programa procura recursivamente
> todos os pdfs e dá uma saída formatada, usando o comando pdftotext do pacote
> xpdf-utils.
>
> Invocação(exemplo): $ grepdf empowerment
>
> # 2009.pdf:
> ==========
> Empowerment. University of California Press, Berkeley.8.
>
>
> # Medicalisation of Disability.pdf:
> ==================================
> political empowerment of disabled people as a group and not through
>
>
> # Wheelchairs - from engineering to inclusive design - Include 2005.pdf:
> =======================================================================
> Personas, narratives and empowerment: the inclusive design of `away from
> Empowerment games: participatory design exercises for sustainable public
> Personas, narratives and empowerment: the inclusive design
> Empowerment games: participatory design exercises for sustainable
> Design process, Empowerment Games, designed through collaboration between
>
>
> Não consegui enxugar alguns pontos, apesar de ter dado uma lida nos meus
> amansa-burros:
>
> 1. Como evitar ter de escrever e ler o arquivo 'saida'?
> 2. Como aproveitar a passada // pdftotext -q -raw -nopgbrk "$arquivo" -
> | grep -i "$1" // para, SOMENTE SE POSITIVA (exit status do grep = 0),
> criar a variável $busca e rodar os outros comandos?
> 3. Alguma sugestão para o 'sublinhado-com-um-monte-de-sinais-de-igual'
> que não seja usando laço?
> 4. Teria como fazer os termos de busca ficarem coloridos, como
> aconteceria no grep 'limpo'?
> 5. Será que o pdftotext é o melhor programa para fazer isso? Haveria
> algum modo nativo para melhorar a portabilidade?
>
> Não que o comando não esteja funcionando satisfatoriamente (bem mais rápido
> do que o mecanismo equivalente do Adobe Acrobat, na verdade), mas tenho
> visto que a comunidade Shell Script valoriza a "elegância" e a eficiência da
> coisa, e como estou aprendendo, não haveria oportunidade melhor para
> aprender direito do que incorporar boas práticas. Também fiquei satisfeito
> com o fato de o código ter ficado suficientemente legível.
>
> Obrigado pela ajuda, espero que, independente de mais nada, o script possa
> ser útil para mais gente.
>
> Helton
>
> ==========================
> #!/bin/bash
>
> echo ""
> find -type f -name '*.pdf' -print > saida
> while read arquivo
> do
> busca=$(pdftotext -q -raw -nopgbrk "$arquivo" - | grep -i "$1")
> if [ "$busca" ]
> then
> nome=$(echo "$arquivo" | sed -r 's:.*/([^/]*)$:\1:g')
> count=$(echo "$nome" | wc -c)
> linha=$(for n in $(seq 0 "$count"); do echo -n "="; done; echo -e
> "\n")
> echo -e "# $nome:\n$linha\n$busca\n\n"
> fi
> done < saida
>
> ==========================
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>
- Usar teste para, caso verdadeiro, gerar variável e rodar comandos que usam a variável, Helton Moraes, 2010/10/18
- Re: [shell-script] Usar teste para, caso verdadeiro, gerar variável e rodar comandos que usam a variável,
Eri Ramos Bastos <=
- Re: [shell-script] Usar teste para, caso verdadeiro, gerar variável e rodar comandos que usam a variável, Lawrence Waclawiak, 2010/10/18
- Re: [shell-script] Usar teste para, caso verdadeiro, gerar variável e rodar comandos que usam a variável, jimmy, 2010/10/18