美文网首页Linux中国::开源热点 Linux中国::技术专栏
ddgr:一个从终端搜索 DuckDuckGo 的命令行工具

ddgr:一个从终端搜索 DuckDuckGo 的命令行工具

作者: Linux技术 | 来源:发表于2019-05-30 20:49 被阅读11次

    在 Linux 中,Bash 技巧非常棒,它使 Linux 中的一切成为可能。

    对于开发人员或系统管理员来说,它真的很管用,因为他们大部分时间都在使用终端。你知道他们为什么喜欢这种技巧吗?

    因为这些技巧可以提高他们的工作效率,也能使他们工作更快。

    什么是 ddgr

    ddgr 是一个命令行实用程序,用于从终端搜索 DuckDuckGo。如果设置了 BROWSER 环境变量,ddgr 可以在几个基于文本的浏览器中开箱即用。

    确保你的系统安装了任何一个基于文本的浏览器。你可能知道 googler,它允许用户从 Linux 命令行进行 Google 搜索。

    它在命令行用户中非常受欢迎,他们期望对隐私敏感的 DuckDuckGo 也有类似的实用程序,这就是 ddgr 出现的原因。

    与 Web 界面不同,你可以指定每页要查看的搜索结果数。

    建议阅读:

    Googler – 从 Linux 命令行搜索 Google

    Buku – Linux 中一个强大的命令行书签管理器

    SoCLI – 从终端搜索和浏览 StackOverflow 的简单方法

    RTV(Reddit 终端查看器)- 一个简单的 Reddit 终端查看器

    什么是 DuckDuckGo

    DDG 即 DuckDuckGo。DuckDuckGo(DDG)是一个真正保护用户搜索和隐私的互联网搜索引擎。它没有过滤用户的个性化搜索结果,对于给定的搜索词,它会向所有用户显示相同的搜索结果。

    大多数用户更喜欢谷歌搜索引擎,但是如果你真的担心隐私,那么你可以放心地使用 DuckDuckGo。

    ddgr 特性

    快速且干净(没有广告、多余的 URL 或杂物参数),自定义颜色

    旨在以最小的空间提供最高的可读性

    指定每页显示的搜索结果数

    可以在 omniprompt 中导航结果,在浏览器中打开 URL

    用于 Bash、Zsh 和 Fish 的搜索和选项补完脚本

    支持 DuckDuckGo Bang(带有自动补完)

    直接在浏览器中打开第一个结果(如同 “I’m Feeling Ducky”)

    不间断搜索:无需退出即可在 omniprompt 中触发新搜索

    关键字支持(例如:filetype:mime、site:somesite.com)

    按时间、指定区域搜索,禁用安全搜索

    支持 HTTPS 代理,支持 Do Not Track,可选择禁用用户代理字符串

    支持自定义 URL 处理程序脚本或命令行实用程序

    全面的文档,man 页面有方便的使用示例

    最小的依赖关系

    需要条件

    ddgr 需要 Python 3.4 或更高版本。因此,确保你的系统应具有 Python 3.4 或更高版本。

    $ python3 --version 

    Python 3.6.3

    如何在 Linux 中安装 ddgr

    我们可以根据发行版使用以下命令轻松安装 ddgr。

    对于 Fedora ,使用 DNF 命令来安装 ddgr。

    # dnf install ddgr

    或者我们可以使用 SNAP 命令来安装 ddgr。

    # snap install ddgr

    对于 LinuxMint/Ubuntu,使用 APT-GET 命令 或 APT 命令来安装 ddgr。

    $ sudo add-apt-repository ppa:twodopeshaggy/jarun 

    $ sudo apt-get update 

    $ sudo apt-get install ddgr

    对于基于 Arch Linux 的系统,使用 Yaourt 命令或 Packer 命令从 AUR 仓库安装 ddgr。

    $ yaourt -S ddgr 

    或 

    $ packer -S ddgr

    对于 Debian,使用 DPKG 命令 安装 ddgr。

    # wget https://github.com/jarun/ddgr/releases/download/v1.2/ddgr_1.2-1_debian9.amd64.deb 

    # dpkg -i ddgr_1.2-1_debian9.amd64.deb

    对于 CentOS 7,使用 YUM 命令来安装 ddgr。

    # yum install https://github.com/jarun/ddgr/releases/download/v1.2/ddgr-1.2-1.el7.3.centos.x86_64.rpm

    对于 opensuse,使用 zypper 命令来安装 ddgr。

    # zypper install https://github.com/jarun/ddgr/releases/download/v1.2/ddgr-1.2-1.opensuse42.3.x86_64.rpm

    如何启动 ddgr

    在终端上输入 ddgr 命令,不带任何选项来进行 DuckDuckGo 搜索。你将获得类似于下面的输出。

    $ ddgr

    如何使用 ddgr 进行搜索

    我们可以通过两种方式启动搜索。从 omniprompt 或者直接从终端开始。你可以搜索任何你想要的短语。

    直接从终端:

    $ ddgr 2daygeek

    从 omniprompt:

    Omniprompt 快捷方式

    输入 ? 以获得 omniprompt,它将显示关键字列表和进一步使用 ddgr 的快捷方式。

    如何移动下一页、上一页和第一页

    它允许用户移动下一页、上一页或第一页。

    n: 移动到下一组搜索结果

    p: 移动到上一组搜索结果

    f: 跳转到第一页

    如何启动新搜索

    d 选项允许用户从 omniprompt 发起新的搜索。例如,我搜索了 “2daygeek website”,现在我将搜索 “Magesh Maruthamuthu” 这个新短语。

    从 omniprompt:

    ddgr (? for help) d magesh maruthmuthu

    在搜索结果中显示完整的 URL

    默认情况下,它仅显示文章标题,在搜索中添加 x 选项以在搜索结果中显示完整的文章网址。

    $ ddgr -n 5 -x 2daygeek

    限制搜索结果

    默认情况下,搜索结果每页显示 10 个结果。如果你想为方便起见限制页面结果,可以使用 ddgr 带有 --num 或 -n 参数。

    $ ddgr -n 5 2daygeek

    网站特定搜索

    要搜索特定网站的特定页面,使用以下格式。这将从网站获取给定关键字的结果。例如,我们在 2daygeek 网站下搜索 “Package Manager”,查看结果。

    $ ddgr -n 5 --site 2daygeek "package manager"

    via: https://www.2daygeek.com/ddgr-duckduckgo-search-from-the-command-line-in-linux/

    作者:Magesh Maruthamuthu 译者:MjSeven 校对:wxy 选题:lujun9972

    本文由 LCTT 原创编译,Linux中国 荣誉推出

    相关文章

      网友评论

        本文标题:ddgr:一个从终端搜索 DuckDuckGo 的命令行工具

        本文链接:https://www.haomeiwen.com/subject/juebtctx.html