Скриншоты · 5 min read · Nov 14, 2025
Как делать скриншоты в Linux с помощью Scrot
Недавно мы обсуждали утилиту gnome-screenshot, которая является хорошим инструментом для захвата экрана. Но если вы ищете еще более лучший инструмент командной строки для создания скриншотов, то вам стоит попробовать Scrot. Этот инструмент имеет некоторые дополнительные функции, которые в настоящее время недоступны в gnome-screenshot. В этом руководстве мы объясним Scrot с помощью простых примеров.
Пожалуйста, обратите внимание, что все примеры, упомянутые в этом руководстве, были протестированы на Ubuntu 16.04 LTS, и версия scrot, которую мы использовали, составляет 0.8.О Scrot
Scrot ( SCR eensh OT) — это утилита для захвата скриншотов, которая использует библиотеку imlib2 для получения и сохранения изображений. Разработанная Томом Гилбертом, она написана на языке программирования C и лицензирована под лицензией BSD.
Установка Scrot
Инструмент scrot может быть предустановлен на вашей системе Ubuntu, но если это не так, вы можете установить его, используя следующую команду:
sudo apt-get install scrotПосле установки инструмента вы можете запустить его, используя следующую команду:
scrot [options] [filename]Примечание: Параметры в [] являются необязательными.
Использование/Функции Scrot
В этом разделе мы обсудим, как можно использовать инструмент Scrot и какие функции он предоставляет.
Когда инструмент запускается без каких-либо параметров командной строки, он захватывает весь экран.

По умолчанию захваченный файл сохраняется с именем, содержащим дату, в текущем каталоге, хотя вы также можете явно указать имя захваченного изображения при выполнении команды. Например:
scrot [image-name].pngПолучить версию приложения
Если хотите, вы можете проверить версию scrot, используя параметр командной строки -v.
scrot -vВот пример:

Захват текущего окна
С помощью утилиты вы можете ограничить скриншот текущим активным окном. Эта функция доступна с помощью параметра командной строки -u.
scrot -uНапример, вот мой рабочий стол, когда я выполнил вышеуказанную команду в командной строке:

А вот скриншот, захваченный scrot:
Выбор окна
Утилита позволяет захватывать любое окно, щелкнув по нему мышью. Эта функция доступна с помощью параметра -s.
scrot -sНапример, как вы можете видеть на скриншоте ниже, у меня есть экран с двумя перекрывающимися терминальными окнами. В верхнем окне я запускаю вышеупомянутую команду.

Теперь предположим, что я хочу захватить нижнее терминальное окно. Для этого я просто щелкну по этому окну, как только команда будет выполнена - выполнение команды не завершится, пока вы не щелкните где-нибудь на экране.
Вот скриншот, захваченный после щелчка по этому терминалу:

Примечание: Как вы можете видеть на вышеуказанном снимке, была захвачена область, которую покрывает нижнее окно, даже если это включает в себя перекрывающуюся часть верхнего окна.
Включение границы окна в скриншоты
Параметр командной строки -u, о котором мы говорили ранее, не включает границу окна в скриншоты. Однако вы можете включить границу окна, если хотите. Эта функция доступна с помощью параметра -b (в сочетании с параметром -u, конечно).
scrot -ubВот пример скриншота:

Примечание: Включение границы окна также добавляет некоторую область фона к скриншоту.
Задержка при создании скриншотов
Вы можете ввести временную задержку при создании скриншотов. Для этого вам нужно назначить числовое значение параметру –delay или -d.
scrot --delay [NUM]scrot --delay 5Вот пример:
В этом случае scrot будет ждать 5 секунд, а затем сделает скриншот.
Обратный отсчет перед скриншотом
Инструмент также позволяет отображать обратный отсчет при использовании параметра задержки. Эта функция доступна с помощью параметра -c.
scrot –delay [NUM] -cscrot -d 5 -cВот пример скриншота:
Качество изображения
С помощью инструмента вы можете настроить качество изображения скриншота в диапазоне от 1 до 100. Высокое значение означает большой размер и низкую компрессию. Значение по умолчанию составляет 75, хотя эффект отличается в зависимости от выбранного формата файла.
Эта функция доступна с помощью параметра –quality или -q, но вам нужно назначить числовое значение этому параметру в диапазоне от 1 до 100.
scrot –quality [NUM]scrot –quality 10Вот пример снимка:

Таким образом, вы можете видеть, что качество изображения значительно ухудшается, когда параметру -q присваивается значение, близкое к 1.
Генерация миниатюр
Утилита scrot также позволяет вам генерировать миниатюру скриншота. Эта функция доступна с помощью параметра –thumb. Этот параметр требует значения NUM, которое, по сути, является процентом от оригинального размера скриншота.
scrot --thumb NUMscrot --thumb 50Примечание: Параметр –thumb гарантирует, что скриншот будет захвачен и сохранен в оригинальном размере.
Например, вот оригинальный скриншот, захваченный в моем случае:

А вот миниатюра, сохраненная:
Объединение скриншотов с нескольких дисплеев
Если на вашем компьютере подключено несколько дисплеев, scrot позволяет захватывать и объединять скриншоты этих дисплеев. Эта функция доступна с помощью параметра командной строки -m.
scrot -mВот пример снимка:

Выполнение операций над сохраненными изображениями
С помощью инструмента мы можем выполнять различные операции над сохраненными изображениями - например, открыть скриншот в редакторе изображений, таком как gThumb. Эта функция доступна с помощью параметра командной строки -e. Вот пример:
scrot abc.png -e ‘gthumb abc.png’Здесь gthumb — это редактор изображений, который автоматически запустится после выполнения команды.
Следующий снимок команды:

А вот результат вышеуказанной команды:

Таким образом, вы можете видеть, что команда scrot захватила скриншот, а затем запустила редактор изображений gThumb с захваченным изображением в качестве аргумента.
Если вы не укажете имя файла для вашего скриншота, то снимок будет сохранен с именем, содержащим дату, в вашем текущем каталоге - это, как мы уже упоминали в начале, поведение по умолчанию для scrot.
Вот пример параметра командной строки -e, где scrot использует имя по умолчанию для скриншота:
scrot -e ‘gthumb $n’
Стоит отметить, что $n является специальной строкой, которая предоставляет доступ к имени скриншота. Для получения дополнительной информации о специальных строках перейдите в следующий раздел.
Специальные строки
Параметры -e (или –exec) и filename могут принимать форматные спецификаторы при использовании с scrot. Существует два типа форматных спецификаторов. Первый тип - это символы, предшествующие ‘%’, которые используются для форматов даты и времени, в то время как второй тип внутренний для scrot и имеет префикс ‘$’.
Несколько спецификаторов, которые распознаются параметрами –exec и filename, обсуждаются ниже.
$f – предоставляет доступ к пути скриншота (включая имя файла).
Например,
scrot ashu.jpg -e ‘mv $f ~/Pictures/Scrot/ashish/’Вот пример снимка:
Если вы не укажете имя файла, то scrot по умолчанию сохранит снимок в формате файла с отметкой даты. Это формат файла с отметкой даты, используемый по умолчанию в scrot: %yy-%mm-%dd-%hhmmss_$wx$h_scrot.png.
$n – предоставляет имя снимка. Вот пример снимка:

$s – предоставляет доступ к размеру скриншота. Эта функция, например, может быть доступна следующим образом.
scrot abc.jpg -e ‘echo $s’Вот пример снимка
Аналогично, вы можете использовать другие специальные строки $p, $w, $h, $t, $$ и \n, которые предоставляют доступ к размеру изображения в пикселях, ширине изображения, высоте изображения, формату изображения, символу $ и обеспечивают доступ к новой строке соответственно. Вы можете, например, использовать эти строки аналогично примеру $s, который мы обсуждали выше.
Заключение
Утилиту легко установить на системах Ubuntu, что хорошо для новичков. Scrot также предоставляет некоторые продвинутые функции, такие как специальные строки, которые могут использоваться в сценариях профессионалами. Не нужно говорить, что существует небольшая кривая обучения, если вы хотите их использовать.
Get new posts in your inbox
No spam. Unsubscribe anytime.