Существует ли бесплатный инструмент командной строки (желательно с базой данных) для поиска синонимов / антонимов в Linux? Где я могу получить это?
2 ответа
Вы можете использовать Wordnet. Утилита командной строки wn
включает функции тезауруса.
$ wn glow -n1 -synsv
Synonyms/Hypernyms (Ordered by Estimated Frequency) of verb glow
Sense 1
glow
=> radiate
$ wn slow -n2 -antsa
Antonyms of adj slow
Sense 2
slow (vs. fast)
fast (vs. slow)
=> allegro
=> allegretto
=> andantino
=> presto
=> prestissimo
=> vivace
На этой странице показан скрипт, который вы можете использовать, который использует lynx
и dictionary.com.
#!/bin/sh
#--------
# Command line thesaurus
BROWSER="/usr/bin/lynx -source"
WEBSITE="http://thesaurus.reference.com/search?q=$1"
HTML2TEXT="/usr/bin/html2text -style compact"
if test $1; then
${BROWSER} ${WEBSITE} | ${HTML2TEXT} | ${PAGER}
else
echo "Usage: $0 word"
exit 1
fi
Чтобы использовать этот сценарий, назовите его thes, сделайте его исполняемым и убедитесь, что он находится в вашем $ PATH. Затем запустите скрипт, а затем слово, которое вас интересует. Листинг 2
$ thes word
Если вам удастся найти необходимые файлы словарей в любом «открытом» формате, таком как stardict, DSL, xdxf, Babylon BGL (этот не совсем открыт, но на их сайте есть тонны бесплатных словарей) и т.д., То вы можете преобразовать их в формат stardict и использовать их из консоли, используя sdcv. Преобразование может быть сделано через makedict и / или dictconv.
Другой вариант будет использовать словарь Google:
с w3m:
w3m 'http://www.google.com/dictionary?langpair=en%7Cen&q=word&hl=en&aq=f'
с curl+html2text:
curl -s 'http://www.google.com/dictionary?langpair=en%7Cen&q=word&hl=en&aq=f' | html2text
Я некоторое время назад я писал об использовании словарей и Google Translate из консоли.