Поиск Google с терминала Linux

50533
Dean Rather

Я видел консольное приложение Google, которое кто-то написал некоторое время назад, но на самом деле это был веб-сайт, имитирующий консоль.

Мне нужен ярлык или терминальное приложение для Linux, которое я могу использовать для быстрого поиска в Google.

В идеале, он будет отображать топ-10 результатов поиска с номерами рядом с ними, а нажатие на номер откроет сайт в браузере.

Открыть результаты Google в браузере тоже хорошо.

у кого-нибудь есть решение?

33
Сайт, имитирующий консоль - ты говоришь о гусе? http://goosh.org/ nagul 14 лет назад 3
в любом случае вы в конечном итоге откроете браузер, какой в ​​этом смысл? akira 14 лет назад 2
Дело в том, чтобы выполнять поиск в Google из терминала, где мы проводим большую часть нашего времени и наиболее удобны. также может быть полезно, чтобы ваши недавние поиски в Google были видны в истории командной строки. Landon Kuhn 11 лет назад 4
Закрыто как не по теме? Разве это не может быть просто перенесено? neverMind9 5 лет назад 0

14 ответов на вопрос

25
innaM

Вот простая функция bash, которая позволяет вам печатать

google foo bar 

и который затем откроет ваш браузер по умолчанию для отображения страницы результатов Google для этих условий поиска:

google() { search="" echo "Googling: $@" for term in $@; do search="$search%20$term" done xdg-open "http://www.google.com/search?q=$search" } 

Просто вставьте это в свой терминал, чтобы попробовать.

Для Windows или Mac OS X замените последнюю строку одним из следующих (при условии, что вы используете Cygwin или аналогичный в Windows):

Windows

start "http://www.google.com/search?q=$search" 

Mac OS X

open "http://www.google.com/search?q=$search" 
i turned this into a shell script for mac by changing xdg-open to open, removing the function part and then adding script to bin. Thanks! Daniel Jacobson 8 лет назад 2
просто золото !!!! Thomas8 8 лет назад 0
11
Wernight

Предполагается, что именно это делает Google-Cli (это обновленная версия Cli-Google ).

10
tonybaldwin
#!/bin/bash  if [[ $(echo $*) ]]; then  searchterm="$*"  else  read -p "Enter your search term: " searchterm  fi  searchterm=$(echo $searchterm | sed -e 's/\ /+/g')  lynx -dump http://www.google.com/search?q=$searchterm | less 

Скопируйте и вставьте этот скрипт ~/bin, назовите его «гусь» или что-то еще (GOOgle SEarch). Chmod это + х

Использование это:

goose searchterm 

Ясно, что у вас должен быть установлен Lynx.

9
belacqua

If you want to search from the command line and jump to a user-definable browser for results, another solution is use surfraw.

 Surfraw provides a fast unix command line interface to a variety of popular WWW search engines and other artifacts of power. It reclaims google, altavista, dejanews, freshmeat, research index, slashdot and many others from the false‐prophet, pox‐infested heathen lands of html‐forms, placing these wonders where they belong, deep in unix heartland, as god loving extensions to the shell. 

It's available pre-packaged in some Linux distributions (Debian, Ubuntu, unknown others), from source at debian.org, and the latest development code and releases are available from the official git repository (now living on GitLab).

Installation instructions from tarball or deb file are found on the Wiki.

Trivia note : Surfraw was originally written by Julian Assange. (Acronym/backronym for 'SURFRAW' is Shell Users' Revolutionary Front Rage Against the World Wide Web.)

To do a Google search from the command line:
sr google archibald tuttle

In addition to plain old Google, there are a lot of other built in search types.

To search for an RFC dealing with S/MIME:
sr rfc s/mime

Translate a word:
sr translate logiciel

Find torrents:
sr piratebay free music

(These keyword search types continue to be updated.)

More advanced usage :

 $ surfraw google -results=100 RMS, GNU, which is sinner, which is sin? $ sr wikipedia surfraw $ sr austlii -method=phrase dog like $ /usr/lib/surfraw/rhyme -method=perfect Julian 

Surfraw is configurable. You can set it up with some defaults, either per-user in $HOME/.surfraw.conf or system-wide in /etc/surfraw.conf :

SURFRAW_graphical_browser="/usr/bin/links2 -g" SURFRAW_text_browser="/usr/bin/elinks" SURFRAW_graphical=yes 

Here I've set it to use links2 and elinks, but you can use Firefox, Chrome, or any others you prefer.

(Nb. links2 -g is a strange terminal-embedded graphical-mode browser. It's fast but hates modernity.)

3
Alexander

С wget, например:

wget -U 'Firefox/3.0.15' http://www.google.com/search?q=wget+google+query+to+file -O file.html 

Источник

1
Boris Guéry

Я написал небольшое приложение, позволяющее вам выполнять поиск в Google через CLI, оно на самом деле очень простое и в настоящее время поддерживает только веб-поиск, поиск изображений и поиск новостей.

Кодовое название: Жизель

$ php gisele.phar web -m 5 "stackoverflow" 1) Stack Overflow - http://stackoverflow.com/ 2) Ask Question - http://stackoverflow.com/users/login 3) Stack overflow - Wikipedia, the free encyclopedia - http://en.wikipedia.org/wiki/Stack_overflow 4) Blog Stack Exchange - http://blog.stackexchange.com/ 5) StackOverflow - IT Conversations - The Conversations Network - http://itc.conversationsnetwork.org/series/stackoverflow.html 
1
LinuxUser

Lynx - это распределенный информационный браузер общего назначения для World Wide Web. Lynx - это полнофункциональный клиент World Wide Web (WWW) для пользователей, использующих устройства отображения с символьной ячейкой, адресуемые курсором (например, терминалы vt100, эмуляторы vt100, работающие в Windows 95 / NT или Macintoshes, или любые другие «ориентированные на проклятия»). дисплей).

Он будет отображать документы на языке гипертекстовой разметки (HTML), содержащие ссылки на файлы, расположенные в локальной системе, а также файлы, расположенные на удаленных системах, на которых работают серверы Gopher, HTTP, FTP, WAIS и NNTP. Текущие версии Lynx работают на Unix, VMS, Windows 95 / NT, 386DOS и OS / 2 EMX.

1
Rekha Nambrath

You can use w3m - a text based browser. You can open any website with it on terminal. In short you can have google in your terminal and search from there. If you are interested check this link.

To install w3m:

sudo apt-get install w3m 
Пожалуйста, внесите соответствующее содержание ссылки в ответ. albal 8 лет назад 1
1
corvid

the python guy is here now

#!/usr/bin/env python import sys import webbrowser query = " ".join(sys.argv[1:]).encode('utf-8') print('Query: "{}"'.format(query)) webbrowser.open_new_tab('http://www.google.com/search?q={}'.format(query)) 

Example usage:

$ google does this work? query: "Does this work?" 

Then it will open a web browser to this page

0
nagul

Если вы хотите подписаться на ключ API Google, вы можете использовать модуль Net :: Google Perl совместно с Google SOAP API, чтобы сделать это. Смотрите здесь и здесь для простых сценариев Perl, которые используют Net :: Google.

Вы также можете использовать менее специализированный модуль Perl SOAP :: Lite для этой задачи.

Кроме того, вы можете отсканировать запросы Google с помощью WWW :: Mechanize, Web :: Scraper или одного из многих модулей Perl для очистки экрана, если вас не беспокоит его туманное юридическое положение . Вот хороший учебник, с которого можно начать.

Подобный инструмент командной строки может хорошо работать в сочетании с браузером, таким как Uzbl, чтобы обеспечить быстрый просмотр.