Dicionário e tradutor baseado no Michaelis

Publicado por Thiago Gomes Bento Ferreira (última atualização em 30/08/2009)

[ Hits: 9.882 ]

Download 4144.dicionario.sh




Script que consulta o site:

http://michaelis.uol.com.br/moderno/ingles/index.php

e dependendo da opção passada via linha de comando consulta:

- Dicionário
- Tradutor inglês-português
- Tradutor português-inglês

Utilize a opção -h para ver como utilizar.

  



Esconder código-fonte

#!/bin/bash
#       dicionario.sh
#
#       Criado para consultar o site da Michaelis para traduções e dicionário
#
#
# 2009-08-27 : Versão 0.1 : Thiago Ferreira : Com opções -h, -v, -l
#
#
#
#
#
#

site="http://michaelis.uol.com.br/moderno/ingles/index.php"
lingua="portugues-portugues"
palavra=$1

MENSAGEM_USO="
Uso: $(basename "$0") [OPÇÕES]

OPÇÕES:
  -l, --languange=port  Usa como dicionário da lingua portuguesa
                        Opções disponíveis: port,port-eng,eng-port

  -h, --help            Mostra esta tela de ajuda e sai
  -V, --version         Mostra a versão do programa e sai
"

# Tratamento das opções de linha de comando
while test -n "$1"
do
        case "$1" in

                # Opções que ligam/desligam chaves
                #-u | --uppercase) maiusculas=1 ;;

                -l | --languange)
                        shift

                                                                case "$1" in
                                                                        port) lingua="portugues-portugues" ;;
                                                                        port-eng) lingua="portugues-ingles" ;;
                                                                        eng-port) lingua="ingles-portugues" ;;
                                                                        *)
                                                                                echo Valor inválido para \"languange\": $1
                                                                                exit 1
                                                                esac
                ;;

                -h | --help)
                        echo "$MENSAGEM_USO"
                        exit 0
                ;;

                -V | --version)
                        echo -n $(basename "$0")
                        # Extrai a versão diretamente dos cabeçalhos do programa
                        egrep '^# [0-9]{4}-[0-9]{2}-[0-9]{2} : Versão ' "$0" | tail -1 | cut -d : -f 2 | tr -d \#
                        exit 0
                ;;

                *)
                        #echo Opção inválida: $1
                        #exit 1
                        palavra="$1"
                ;;
        esac

        # Opção $1 já processada, a fila deve andar
        shift
done


lynx -source "$site?lingua=$lingua&palavra=$palavra" |
        grep "<span class='palavra'>" |
        sed 's/<br[^>]*\/\?>/\n/g
                        s/<\/B> \?<B>/ /g
                        s/<B>/\n/g
                        s/<[^>]*>//g
                        s/^[[:space:]]*//g' |
        sed "s/ç/ç/g
                        s/ã/ã/g
                        s/õ/õ/g
                        s/á/á/g
                        s/é/é/g
                        s/í/í/g
                        s/ó/ó/g
                        s/ú/ú/g
                        s/à/à/g
                        s/â/â/g
                        s/ê/ê/g
                        s/î/î/g
                        s/ô/ô/g
                        s/û/û/g
                        s/”/\"/g
                        s/’/'/g
                        s/ü/ü/g"

Scripts recomendados

Editor de configurações para Tint2

Remove linhas

configurar a rede wireless passando por roteador (melhorado e comentado)

POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - RESTAURANDO MBOX VIA SSH

renameciclefile.sh


  

Comentários
[1] Comentário enviado por leonline em 30/08/2009 - 22:11h

Meus parabéns!!! Excelente e muito útil!!!

[2] Comentário enviado por schrodinger em 22/09/2014 - 18:00h

Não deu certo aqui!!! Apareceu isso: sed: -e expressão #1, caractere 14: Comando `s' inacabado (s/// - faltou delimitador)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts