Гид по технологиям

Как открывать PDF и другие файлы в Ubuntu из командной строки

• 4 min read • Linux • Обновлено 28 Nov 2025
Открыть PDF и файлы в Ubuntu из командной строки
Открыть PDF и файлы в Ubuntu из командной строки

Скриншот рабочего стола Ubuntu с выделенным PDF-файлом

Введение

Обычный пользователь открывает PDF двойным щелчком или через контекстное меню «Открыть с помощью». Но при работе в терминале удобнее запускать приложение одной командой. Evince — стандартный просмотрщик PDF/PS в Ubuntu, но для большинства задач достаточно xdg-open: он вызывает приложение, назначенное системой для конкретного типа файла.

Все примеры здесь проверены на Ubuntu 22.04; команды универсальны для современных дистрибутивов, использующих xdg-utils и GNOME/GIO.

Открытие PDF из командной строки в Linux, показывающий терминал и запущенный просмотрщик

Базовая команда

Чтобы открыть PDF-файл (или любой другой файл) в приложении по умолчанию, выполните:

xdg-open [имя-файла.pdf]

Пример для текущей директории:

xdg-open document.pdf

xdg-open автоматически определит MIME‑тип файла и запустит связанное с ним приложение — для PDF это обычно Evince.

Открытие каталогов и URL

Чтобы открыть папку в менеджере файлов (Nautilus):

xdg-open [путь-к-папке]

Примеры:

xdg-open .
xdg-open /tmp

Чтобы открыть веб‑страницу в браузере по умолчанию:

xdg-open https://www.howtoforge.com/

Открытие папки в графическом файловом менеджере из командной строки

Открытие веб-сайта в браузере через командную строку

Также возможны тривиальные и курьёзные примеры:

xdg-open ~/Documents/notes.odt
xdg-open mailto:someone@example.com
xdg-open /usr/share/applications/gedit.desktop

Интерфейс xdg-open и подсказки

Как работает xdg-open и где смотреть соответствия

Коротко: xdg-open определяет MIME‑тип файла и использует системные обработчики (GNOME file handlers / XDG MIME) для запуска приложения по умолчанию. Это то же поведение, которое вы наблюдаете при двойном щелчке в файловом менеджере.

Полезные места для проверки и настройки соответствий приложений:

  • Системный файл: /etc/gnome/defaults.list — список ассоциаций, применяемых по умолчанию.
  • Пользовательские настройки: ~/.config/mimeapps.list или ~/.local/share/applications/mimeapps.list — тут можно переопределить системные значения для текущего пользователя.
  • Утилита для запроса MIME: xdg-mime. Примеры:
xdg-mime query filetype document.pdf
xdg-mime default evince.desktop application/pdf

Первая команда покажет MIME‑тип файла; вторая назначит evince.desktop как обработчик для PDF.

Когда xdg-open не работает и альтернативы

В ряде случаев xdg-open не сработает: на headless‑сервере без X/Wayland, в GUI с нестандартной конфигурацией или при отсутствии ассоциированного приложения. Рассмотрите альтернативы:

  • evince <файл> — напрямую открыть файл в Evince.
  • gio open <файл> — GNOME GIO-альтернатива для открытия файлов/URL.
  • sensible-browser — Debian-ориентированная обёртка для браузера по умолчанию.
  • okular, atril, libreoffice – <файл> — явный вызов альтернативных приложений.

Если вы автоматизируете на сервере без GUI, подумайте о простых инструментах для обработки PDF (pdftk, qpdf) вместо открытия в GUI.

Отладка и типичные ошибки

  1. Ничего не происходит: запущен не графический сеанс. Проверьте переменную окружения DISPLAY или используйте ssh -X/ssh -Y для проброса X.
  2. Неверные ассоциации: проверьте ~/.config/mimeapps.list и /etc/gnome/defaults.list.
  3. Ошибка «No application is registered for MIME type»: установите нужное приложение или назначьте его через xdg-mime.
  4. Если xdg-open не установлен, установите пакет xdg-utils через apt.

Пример проверки MIME‑типа и назначения приложения:

file --mime-type -b document.pdf    # покажет application/pdf
xdg-mime query filetype document.pdf
xdg-mime default evince.desktop application/pdf

Короткий плейбук для автоматизации

  1. Проверить, что GUI доступен: test -n “$DISPLAY” || echo “Нет графического сеанса”.
  2. Запросить MIME: xdg-mime query filetype <файл>.
  3. Если нужно — назначить приложение: xdg-mime default .desktop .
  4. Запустить: xdg-open <файл> и проверять код возврата.

Ментальные модели и когда этот подход не подходит

Ментальная модель: xdg-open — это «агент соответствий» между типом содержимого и приложением. Он не открывает файлы сам, а просит выбранное приложение сделать это за него.

Когда не подходит:

  • На серверах без GUI — запуск бессмыслен.
  • Для массовой обработки файлов лучше использовать консольные утилиты (pdftk, qpdf, imagemagick).
  • Если нужен точный контроль над приложением (параметры запуска), вызывайте приложение напрямую (evince, okular и т. п.).

Диаграмма принятия решения

mermaid
flowchart TD
  A[Нужно открыть файл из терминала?] --> B{Есть графический сеанс?}
  B -- Нет --> C[Использовать консольные инструменты или проброс X]
  B -- Да --> D{Известно приложение для типа файла?}
  D -- Да --> E[Вызвать приложение напрямую (evince, okular)]
  D -- Нет --> F[Вызвать xdg-open <файл>]
  F --> G{Открылось?}
  G -- Да --> H[Готово]
  G -- Нет --> I[Проверить MIME, xdg-mime, переменную DISPLAY]

Роль‑ориентированные чек‑листы

Для десктоп‑пользователя:

  • Убедиться, что приложение установлено (Evince, браузер и т.д.).
  • Запустить xdg-open <файл>.
  • Если не открывается, проверить двойным кликом в файловом менеджере.

Для разработчика скриптов:

  • Проверить доступность GUI (DISPLAY).
  • Пробовать возвратный код команды и логировать ошибки.
  • Для headless‑режима использовать консольные утилиты.

Для системного администратора:

  • Настроить системные ассоциации в /etc/gnome/defaults.list.
  • Настроить пользовательские маппинги в ~/.config/mimeapps.list.
  • Убедиться, что xdg-utils и необходимые приложения установлены.

Критерии приёмки

  • Выполнение xdg-open <файл> открывает файл в графическом приложении без ошибок.
  • В headless‑сценариях скрипт корректно обрабатывает отсутствующий GUI и возвращает понятное сообщение.
  • MIME‑тип файла корректно определяется командой xdg-mime query filetype.

Безопасность и конфиденциальность

Открытие неизвестных PDF или вложений в графическом приложении может представлять риск (уязвимости просмотрщика, вредоносные макросы). Всегда проверяйте источники и используйте инструменты анализа перед открытием подозрительных файлов.

Однострочная глоссарий

  • xdg-open: утилита XDG для открытия файлов/URL в приложениях по умолчанию.
  • Evince: стандартный просмотрщик PDF/PS в GNOME/Ubuntu.
  • MIME: формат, определяющий тип содержимого файла.
  • xdg-mime: утилита управления соответствием MIME ↔ приложения.

Заключение

xdg-open — универсальный и простой инструмент для открытия файлов и URL в приложениях по умолчанию из командной строки. Он экономит время, избавляет от запоминания конкретных приложений и хорошо подходит для интерактивного использования и простых сценариев автоматизации. В сложных или headless‑сценариях используйте прямой вызов приложений или консольные инструменты.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро