Pular para o conteúdo

traduz_man - traduzir man pages

Script idealizado após tentativa de ajuda no tópico:   http://www.vivaolinux.com.br/topico/Iniciantes-no-Linux/Traducao-do-man/

Para usar basta chamar o script seguido do nome do comando no qual deseja que a tradução de seu manual seja feito.

Sintaxe de uso:

./traduz_man.sh comando

No final será gerado um arquivo com o nome man_COMANDO.txt, onde COMANDO é o nome do comando que você informou ao script.

Obs.: A tradução é feita usando o translate.google.com, o serviço do google é muito bom, mas alguns termos não deveriam ser traduzidos e tem a organização do texto, etc, portanto a tradução não será perfeita, mas já ajuda ;-)
Raimundo Alves Portela rai3mb
Hits: 6.656 Categoria: Shell Script Subcategoria: Introdução
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

Script idealizado após tentativa de ajuda no tópico:   http://www.vivaolinux.com.br/topico/Iniciantes-no-Linux/Traducao-do-man/

Para usar basta chamar o script seguido do nome do comando no qual deseja que a tradução de seu manual seja feito.

Sintaxe de uso:

./traduz_man.sh comando

No final será gerado um arquivo com o nome man_COMANDO.txt, onde COMANDO é o nome do comando que você informou ao script.

Obs.: A tradução é feita usando o translate.google.com, o serviço do google é muito bom, mas alguns termos não deveriam ser traduzidos e tem a organização do texto, etc, portanto a tradução não será perfeita, mas já ajuda ;-)
Download traduz_man.sh Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Esconder código-fonte

#/bin/bash
# Desenvolvido por: Raimundo Portela <rai3mb@gmail.com>
# Script idealizado após tentativa de ajudar no tópico: 
# http://www.vivaolinux.com.br/topico/Iniciantes-no-Linux/Traducao-do-man/
# Para usar basta chamar o script seguido do nome do comando no qual deseja
# que a tradução de seu manual seja feito.
# Sintaxe de uso: ./traduz_man.sh comando
#-----------------------------------------------------------------------

[ -z $1 ] && echo "Sintaxe de uso $0 comando" && exit 1
COMANDO=$1
ARQ_TEMP='/tmp/man_temp.html'
MAN_TEMP='/tmp/man_temp'
ARQ_RESULT="man_$COMANDO".txt
> "$ARQ_RESULT"
# verifica se existe manual para o comando fornecido
if ! man $COMANDO > "$MAN_TEMP" 2>/dev/null
then
   echo "Comando [$COMANDO] sem manual disponível"
   exit 1
fi
i=0
while read LINHA
do
   # linha vazia
   echo "$LINHA" | egrep -q '^$' && echo >> "$ARQ_RESULT" && continue
   echo $LINHA | egrep -q '^\-.*\-\-.*' && echo "$LINHA" >> "$ARQ_RESULT" && continue
   echo $LINHA | egrep -q '^\-\-.*' && echo "$LINHA" >> "$ARQ_RESULT" && continue

   wget --header='Accept-Charset: iso-8859-1' -q -U Mozilla -O "$ARQ_TEMP" "http://translate.google.com/?ie=UTF-8&tl=pt&q=$LINHA"
   # Transforma codificação do arquivo para utf-8
   [ $i -eq 0 ] && cp "$ARQ_TEMP" /tmp/teste
   cat "$ARQ_TEMP" | iconv -f iso8859-1 -t UTF-8 -o "$ARQ_TEMP"
   sed -i 's/<[^>]*>//g' "$ARQ_TEMP"
   egrep -o 'ArabicAlpha.{2,200}Undo edits' "$ARQ_TEMP" | sed 's/ArabicAlpha//g' | sed 's/Undo edits//g' >> "$ARQ_RESULT"
   i=1
done < "$MAN_TEMP"

# trata alguns caracteres
sed -i 's/"/"/g' "$ARQ_RESULT"
sed -i 's/</</g' "$ARQ_RESULT"
sed -i 's/>/>/g' "$ARQ_RESULT"
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Calculadora simples

Criando um usuário em shell script

rc.firewall

Exemplo de Shell-Script

Simply Session

#1 Comentário enviado por removido em 21/05/2012 - 13:44h
muito bom cara... bem interessante!
#2 Comentário enviado por julio_hoffimann em 21/05/2012 - 22:10h
Oi Raimundo,

Parabéns pelo script, aqui vão algumas dicas para melhorá-lo...

1) Use o comando tempfile para criar arquivos temporários de maneira segura:

FILENAME=$(tempfile --prefix man- --suffix .html)

2) Talvez seja interessante não criar um arquivo de texto no diretório, mas redirecionar o conteúdo para um pager:

less $FILENAME
#3 Comentário enviado por removido em 21/05/2012 - 23:46h
Muito bom mesmo!

Estava procurando algo assim e não tinha me ocorrido fazer uso do wget. Bem simples.

Valeu.
#4 Comentário enviado por xxoin em 29/05/2012 - 03:55h
Excelente. O valor dessa contribuição está tanto em sua "utilidade" quanto na "possibilidade de reaproveitamento".

Contribuir com comentário

Entre na sua conta para comentar.