Linux终端机上的Google搜索[关闭]


33

我看到有人写了一段时间的Google控制台应用,但这实际上是一个模仿控制台的网站。

我需要的是可以用来快速搜索Google的快捷方式或Linux终端应用程序。

理想情况下,它将显示前10个搜索结果,旁边是数字,然后按数字将在浏览器中打开该网站。

在浏览器中打开Goog​​le搜索结果也可以。

有没有人有办法解决吗?


3
该网站模拟控制台-您是在谈论咕咕叫吗?goosh.org
nagul

3
无论如何,您最终将打开浏览器,这是什么意思?
akira

5
重点是从我们花费大部分时间且最舒适的终端机上发出Google搜索。让您最近的Google搜索在命令行历史记录中全部可见也很巧妙。
Landon Kuhn

1
关闭为题外话?不仅可以迁移吗?
neverMind9 '18 -10-21

Answers:



26

这是一个简单的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,请用以下选项之一代替最后一行(假设您在Windows上使用Cygwin或类似软件):

视窗

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

Mac OS X

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

2
我通过将xdg-open更改为open,删除了功能部分,然后将脚本添加到bin中,将其变成了Mac的Shell脚本。谢谢!
丹尼尔·雅各布森

简直就是金!!!
Thomas8

如果您是使用哦,我的-zsh的,尝试在网上搜索插件- > github.com/robbyrussell/oh-my-zsh/tree/master/plugins/...
Jeff7566

10
#!/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,命名为“ goose”或其他名称(GOOgle SEarch)。chmod + x

用法是:

goose searchterm

显然,您必须安装Lynx。


9

如果要从命令行搜索并跳转到用户定义的浏览器以获取结果,则另一个解决方案是使用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.

它可以预打包在一些Linux发行版(Debian,Ubuntu,其他不知名的版本)中,可从debian.org上获取源代码,最新的开发代码和发行版可从官方git仓库(现位于GitLab上)获得。

Wiki上找到tarball或deb文件的安装说明

Trivia note:Surfraw最初是由朱利安·阿桑奇(Julian Assange)撰写的。(“ SURFRAW”的首字母缩略词/ backronym是壳牌用户针对互联网的革命阵线之怒。)

要从命令行进行Google搜索,请执行以下操作:
sr google archibald tuttle

除了普通的旧版Google外,还有许多其他内置的搜索类型。

要搜索处理S / MIME的RFC,请执行以下操作:
sr rfc s/mime

翻译一个词:
sr translate logiciel

查找种子:
sr piratebay free music

(这些关键字搜索类型将继续更新。)

更高级的用法

     $ 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是可配置的。您可以使用以下默认设置进行设置:每个用户位于$HOME/.surfraw.conf或系统范围内/etc/surfraw.conf

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

在这里,我将其设置为使用links2和elinks,但是您可以使用Firefox,Chrome或您喜欢的其他任何工具。

(Nb。links2 -g是一种奇怪的终端嵌入式图形模式浏览器。它速度很快,但讨厌现代性。)



1

Lynx-万维网的通用分布式信息浏览器。Lynx是功能齐全的万维网(WWW)客户端,适用于运行可光标寻址的字符单元显示设备(例如,在Windows 95 / NT或Macintoshes上运行的vt100终端,vt100仿真器或任何其他“面向curses”的用户)显示)。

它将显示超文本标记语言(HTML)文档,其中包含指向本地系统上的文件以及运行Gopher,HTTP,FTP,WAIS和NNTP服务器的远程系统上的文件的链接。当前版本的Lynx在Unix,VMS,Windows 95 / NT,386DOS和OS / 2 EMX上运行。


1

我编写了一个小应用程序,使您可以通过CLI进行Google搜索,它实际上非常简单,目前仅支持Web搜索,图片搜索和新闻搜索。

代号:吉赛尔

$ 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

您可以使用w3m-基于文本的浏览器。您可以在终端上打开任何带有它的网站。简而言之,您可以在终端中安装google并从那里进行搜索。如果您有兴趣,请检查此链接。

要安装w3m:

sudo apt-get install w3m

1
请把链接的相关内容带入答案。
2015年

1

python家伙现在在这里

#!/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))

用法示例:

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

然后它将打开Web浏览器到此页面


0

如果您愿意注册Google API密钥,则应该能够将Net :: Google Perl模块与Google SOAP API结合使用。有关使用Net :: Google的简单perl脚本,请参见此处此处

您也可以使用不太专业的SOAP :: Lite perl模块来完成此任务。

另外,如果您不受法律地位的困扰,可以通过WWW :: Mechanize,Web :: Scraper或许多Perl屏幕抓取模块之一来抓取Google查询。这里有一个很好的教程让你开始。

像这样的命令行工具与Uzbl这样的浏览器结合使用时,可以提供快速的浏览体验。


0

您可以使用终端浏览器(例如Elinks),该浏览器允许您在终端中浏览Web并有选择地在另一个浏览器(例如Firefox)中打开链接。


0

在Mac OSX中,我在.bash_profil中使用别名 alias google=sh ~/scripts/google.sh

google.sh:

#!/bin/bash
open -g /Applications/Safari.app "http://www.google.com/search?q=$*"

用法:

google word1 word2 ...

这种方式对我来说很好。

干杯


0

如果您使用默认设置的KDE环境,则ypu可以从krunner中搜索(由Alt-F2命令调用)。

要在Google上搜索查询,请在krunner文本框中输入:

gg:query

要在Wikipedia上搜索查询,请在krunner文本框中输入:

wp:query

例子:

Alt-F2 + gg:Google search from terminal
Alt-F2 + wp:stackoverflow

资料来源: https : //userbase.kde.org/Plasma/Krunner


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.