traduz_man - traduzir man pages
Publicado por Raimundo Alves Portela (última atualização em 21/05/2012)
[ Hits: 6.545 ]
Homepage: http://portelanet.com
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 ;-)
#/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"
Meu script em shell entendo chamadas ao sistema do mesmo
Script simples de Backup para os diretórios listados abaixo do /
Renomeando arquivos de forma padronizada
Monitor de recursos do sistema
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (14)
Instalação do cosmic no archlinux (1)
De volta para o futuro - ou melhor, para o presente (parte 2) (2)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (7)









