ddgr — это легковесная утилита командной строки, которая позволяет выполнять поисковые запросы через DuckDuckGo прямо в терминале. Она идеально подходит для пользователей, которые ценят минималистичный интерфейс и высокую конфиденциальность своих поисковых запросов. ddgr предлагает множество функций, таких как фильтрация результатов по времени, региональная настройка поиска и многое другое. В этой статье вы найдете подробное руководство по установке, использованию и интеграции ddgr с текстовыми браузерами.
1. Введение в ddgr
DuckDuckGo — это поисковая система, ориентированная на приватность пользователей. ddgr предоставляет возможность использования этой системы напрямую из командной строки, что делает процесс поиска быстрым и эффективным. Благодаря ddgr, пользователи могут избегать сбора данных, что характерно для большинства традиционных браузеров, и получать результаты поиска без рекламы и трекеров.
2. Установка ddgr
2.1 Установка на Linux
ddgr поддерживается многими дистрибутивами Linux и может быть установлен через стандартные пакетные менеджеры:
- Debian/Ubuntu: Установите ddgr с помощью
apt
:
sudo apt update
sudo apt install ddgr
- Arch Linux: Используйте
pacman
для установки:
sudo pacman -S ddgr
- Fedora: Установите ddgr с помощью
dnf
:
sudo dnf install ddgr
Если ddgr отсутствует в репозиториях вашего дистрибутива, его можно установить через pip
:
pip3 install ddgr
2.2 Установка на macOS
Для macOS ddgr можно установить с помощью Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ddgr
2.3 Установка на Windows
На Windows можно установить ddgr через эмуляторы терминала, такие как Git Bash, при наличии Python и pip:
pip install ddgr
3. Основные команды и примеры использования
ddgr предоставляет богатый функционал для работы с поисковыми запросами в терминале. Вот несколько основных примеров:
- Простой поиск: Введите запрос в терминале:
ddgr "ваш поисковый запрос"
- Ограничение количества результатов: Вывод первых
n
результатов:
ddgr -n 5 "ваш поисковый запрос"
- Поиск по конкретному сайту: Ограничение поиска определенным доменом:
ddgr -w example.com "ваш поисковый запрос"
- Фильтрация по региону: Настройка поиска на конкретный регион:
ddgr --region ru "ваш поисковый запрос"
- Безопасный поиск: Включение безопасного поиска:
ddgr --safe "ваш поисковый запрос"
- Поиск с фильтрацией по времени: Ограничение по временным интервалам:
ddgr --time d "ваш поисковый запрос"
- Открытие первого результата в браузере: Быстрое открытие первой ссылки:
ddgr -j "ваш поисковый запрос"
4. Интеграция с текстовыми браузерами
ddgr поддерживает интеграцию с текстовыми браузерами, такими как w3m, что позволяет открывать результаты поиска прямо в терминале.
4.1 Настройка переменной среды BROWSER
Для корректной работы ddgr с текстовыми браузерами, убедитесь, что переменная BROWSER
установлена. Например:
export BROWSER=w3m
Или для разового использования:
BROWSER=w3m ddgr "ваш поисковый запрос"
По умолчанию ddgr подавляет вывод браузера, если переменная BROWSER
не установлена на один из известных текстовых браузеров (elinks, links, lynx, w3m, www-browser). Если вы используете другой текстовый браузер, включите вывод с опцией --show-browser-logs
.
Для использования GUI-браузера с установленной переменной BROWSER
, используйте ключ O
в командной строке omniprompt. ddgr будет пытаться игнорировать текстовые браузеры и откроет результат в GUI-браузере.
5. Полезные функции и опции ddgr
ddgr предлагает множество опций, которые помогут настроить утилиту под ваши нужды:
- -n, –num N: Устанавливает количество результатов на странице (по умолчанию 10).
- -r, –reg REG: Региональный поиск, например,
us-en
для США. - –colorize: Управление цветовым выводом (автоматический, всегда, никогда).
- -C, –nocolor: Отключение цветового вывода.
- –colors: Настройка цветов вывода (подробности в man-странице).
- -j, –ducky: Открытие первого результата в браузере.
- -t, –time SPAN: Ограничение поиска по времени (день, неделя, месяц, год).
- -w, –site SITE: Поиск по указанному сайту.
- -x, –expand: Показ полного URL в результатах поиска.
- -p, –proxy URI: Использование прокси для поиска.
- –unsafe: Отключение безопасного поиска.
- –noua: Отключение пользовательского агента.
- –json: Вывод результатов в формате JSON.
- –gb, –gui-browser: Открытие результата в GUI-браузере.
- –np, –noprompt: Выполнение поиска без перехода в интерактивный режим.
- –rev, –reverse: Сортировка результатов в обратном порядке.
- –url-handler UTIL: Использование пользовательского скрипта или утилиты для открытия ссылок.
- –show-browser-logs: Отключение подавления вывода браузера (stdout и stderr).
- -v, –version: Вывод информации о версии ddgr.
- -d, –debug: Включение отладки.
Эти опции позволяют гибко настраивать ddgr и использовать его для различных целей.
5.1 Специальные команды omniprompt
В интерактивном режиме ddgr поддерживает следующие команды:
- n, p, f: Переход к следующей, предыдущей или первой странице результатов.
- index: Открытие результата по его индексу в браузере.
- o [index|range|a …]: Открытие выбранных индексов, диапазонов или всех результатов.
- O [index|range|a …]: То же, что и
o
, но с попыткой открыть в GUI-браузере. - d keywords: Новый поиск с исходными параметрами.
- x: Переключение отображения полного URL.
- c index: Копирование URL по индексу в буфер обмена.
- q, ^D, двойное нажатие Enter: Выход из ddgr.
- ? Показ справки по командам omniprompt.
- *: Любой другой ввод будет считаться новым поисковым запросом.
6. Дополнительные советы по использованию ddgr
Некоторые полезные советы помогут вам еще больше оптимизировать использование ddgr:
- Сохранение поисковых запросов: Сохраните часто используемые запросы в виде алиасов командной оболочки. Например, добавьте следующий алиас в файл
.bashrc
:
alias duck='ddgr --safe --region ru'
Теперь вы можете выполнять безопасный поиск с установленным регионом, просто введя команду duck "ваш запрос"
в терминале.
- Использование ddgr в скриптах: ddgr можно использовать в bash-скриптах для автоматизации задач поиска. Например, чтобы найти и вывести ссылки на страницы, связанные с определенной темой:
#!/bin/bash
ddgr -n 10 --json "ваш поисковый запрос" | jq '.[] | .url'
Этот скрипт выполнит поиск и выведет 10 ссылок в формате JSON, которые можно использовать для последующей обработки.
- Интеграция с другими инструментами: ddgr может быть интегрирован с такими инструментами, как
fzf
(интерактивный фильтр командной строки), что позволяет выбирать результаты поиска и открывать их в текстовом браузере. Пример команды:
ddgr -n 10 "ваш поисковый запрос" | fzf | xargs -I {} lynx {}
Эта команда выполнит поиск, отфильтрует результаты с помощью fzf
, а затем откроет выбранный результат в Lynx.
7. Заключение
ddgr — это мощный инструмент для поиска в интернете с использованием DuckDuckGo прямо из командной строки. Его гибкость и настраиваемость делают его идеальным выбором для тех, кто ценит приватность, эффективность и удобство работы в терминале. Благодаря множеству опций и поддержке текстовых браузеров, ddgr позволяет эффективно искать информацию, не покидая консоль.