Какова команда терминала, чтобы сделать скриншот?

116

Какие команды можно использовать в терминале, что эквивалентно PrtScкнопке (Печать экрана)?

Я использую Ubuntu GNOME.

devav2
источник
Вы используете gnome или KDE или что-то еще? Это зависит от того, какую среду рабочего стола вы используете.
Брайам
@Braiam взгляните на его ответ .
Авинаш Радж
@AvinashRaj Вы знаете, что Unity тоже использует скриншот gnome?
Брайам
1
я думаю, что gnome-screenshotэто стандартный инструмент для создания скриншотов.
Авинаш Радж
1
Возможные дубликаты Какие инструменты скриншотов доступны?
Чиро Сантилли 新疆 at 中心 法轮功 六四 事件

Ответы:

104

Вы можете использовать инструмент импорта , доступный в пакете ImageMagick (его необходимо установить, если он уже не доступен в вашей системе).

Запустите следующую команду в оболочке:

import screenshot.png

и выберите окно, которое вы хотите захватить или выберите регион, нажав левую кнопку мыши и перетащив.

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

import -window root -resize 400x300 -delay 200 screenshot.png

Чтобы увидеть все параметры, доступные в команде импорта, перейдите на веб-сайт ImageMagick .

Еще один способ сделать скриншот из терминала - это мошенник

Чтобы установить тип мошонки :

sudo apt-get install scrot

Чтобы сделать снимок экрана в Linux с терминала типа scrot:

scrot MyScreenshot.png

Еще несколько вариантов с scrotздесь:

scrot -b -d 5 '%Y:%m:%d:%H:%M:%S.png' -e 'mv $f ~/Desktop/'

В этом примере

  • -b указывает, включая границы окна
  • -d указывает задержку в пять секунд
  • «% Y:% m:% d:% H:% M:% S.png» сохранит снимок экрана с именем на основе текущей даты и времени и в указанном формате, .pngв данном случае
  • -e 'mv $f ~/Desktop/' говорит мошеннику сохранить скриншот на рабочий стол
user61928
источник
Оба ответа, похоже, работают только с текущим $ DISPLAY, поэтому не работают над SSH
тот бразильский парень
Это, безусловно, работает для многих пользователей, просто не работает для меня. ImageMagick import отображает прозрачные границы окон / эффекты свечения в KDE Desktop Effects в черном цвете. И scrotвообще не хочет участвовать в каналах, которые я использую, чтобы избежать ненужных промежуточных файлов при обрезке нужного экрана из настроек Xinerama. Я использую xwdвместо этого и использую ImageMagick, convert чтобы преобразовать xwd- формат в PNG и сделать обрезку. (См. Также мой ответ ниже)
Кристиан Худжер
55

Нашел эту опцию здесь и другие варианты также перечислены.

Откройте терминал нажатием Ctrl+ Alt+ Tи введите

gnome-screenshot

используйте gnome-screenshot -d xx, чтобы отложить действие.

Отложить действие скриншота на 10 секунд

gnome-screenshot -d 10

или же

sleep 10;gnome-screenshot
devav2
источник
4
gnome-screenshot --helpдаст вам много вариантов.
это что-то
2
gnome-screenshot --interactive
Луис Соуза
13

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

sudo add-apt-repository ppa:shutter/ppa
sudo apt-get update
sudo apt-get install shutter

Чтобы сделать скриншот активного окна,

shutter -a -o shot.png -e

Чтобы сделать скриншот всего дисплея,

shutter -f -o shot.png -e

Сделанные скриншоты хранятся в домашнем каталоге.

Для получения дополнительных опций запустите shutter --helpкоманду,

Usage:
    shutter [options]

Options:
    Example 1
            shutter -a -p=myprofile --min_at_startup

    Example 2
            shutter -s=100,100,300,300 -e

    Example 3
            shutter --window=.*firefox.*

    Example 4
            shutter --web=http://shutter-project.org/ -e

  Capture Mode Options:
    -s, --select=[X,Y,WIDTH,HEIGHT]
            Capture an area of the screen. Providing X,Y,WIDTH,HEIGHT is
            optional.

    -f, --full
            Capture the entire screen.

    -w, --window=[NAME_PATTERN]
            Select a window to capture. Providing a NAME_PATTERN (Perl-style
            regex) ist optional.

    -a, --active
            Capture the current active window.

    --section
            Capture a section. You will be able to select any child window
            by moving the mouse over it.

    -m, --menu
            Capture a menu.

    -t, --tooltip
            Capture a tooltip.

    --web=[URL]
            Capture a webpage. Providing an URL ist optional.

    -r, --redo
            Redo last screenshot.

  Settings Options:
    -p, --profile=NAME
            Load a specific profile on startup.

    -o, --output=FILENAME
            Specify a filename to save the screenshot to (overwrites any
            profile-related setting).

            Supported image formats: You can save to any popular image
            format (e.g. jpeg, png, gif, bmp). Additionally it is possible
            to save to pdf, ps or svg.

            Please note: There are several wildcards available, like

             %Y = year
             %m = month
             %d = day
             %T = time
             $w = width
             $h = height
             $name = multi-purpose (e.g. window title)
             $nb_name = like $name but without blanks in resulting strings
             $profile = name of current profile
             $R = random char (e.g. $RRRR = ag4r)
             %NN = counter

            The string is interpretted by strftime. See "man strftime" for
            more examples.

            As an example: shutter -f -e -o './%y-%m-%d_$w_$h.png' would
            create a file named '11-10-28_1280_800.png' in the current
            directory.

  Application Options:
    -h, --help
            Prints a brief help message and exits.

    -v, --version
            Prints version information.

    -d, --debug
            Prints a lot of debugging information to STDOUT.

    --clear_cache
            Clears cache, e.g. installed plugins, at startup.

    --min_at_startup
            Starts Shutter minimized to tray.

    --disable_systray
            Disables systray icon.

    -e, --exit_after_capture
            Exit after the first capture has been made. This is useful when
            using Shutter in scripts.
Авинаш Радж
источник
2
Затвор - очень продвинутый инструмент, который имеет редактирующие снимки, такие как GIMP, и легко добавляет форму автоинкремента, что очень полезно для учебников.
guneysus
8

Я пытался использовать ImageMagick, import но он не работал для меня при использовании KDE Desktop Effects. ImageMagick import имеет выходные прозрачные границы окна в черном цвете вместо правильного сочетания переднего плана альфа и фона.

Я также пытался использовать X11 xwd и NetPBM, xwdtopnm но это также не сработало для меня, NetPBM xwdtopnm не мог должным образом справиться с многоэкранным выводом, xwdпотому что у меня есть настройка Xinerama.

Но объединение X11 xwd с ImageMagick convert прекрасно сработало для меня:

xwd -silent -root | convert xwd:- screenshot.png

Или, если у вас есть настройка Dual-FullHD Xinerama, как у меня, и вы хотите только первый экран:

xwd -silent -root | convert xwd:- -crop 1920x1080+0+0 test.png

Только для второго экрана:

xwd -silent -root | convert xwd:- -crop 1920x1080+1920+0 +repage test.png
Кристиан Худжер
источник
Хороший ответ. Но так как вы читаете из трубы , вероятно , нужно указать формат ввода для команды новообращенного: xwd ... | convert xwd:- .... По крайней мере, это требовалось для моей установки Debian Strech с IM 6.9.6-2
Сильвен Леру
7

Если вы хотите сделать скриншот с логин-терминала (тот, который вы открываете с помощью Ctrl+ Alt+ F1), вы можете использовать программу fbgrab.

Вы можете установить его, набрав sudo apt-get install fbcat.

Затем сделайте скриншот своего логин-терминала, введите логин-терминал:

$ sudo fbgrab my_screenshot

my_screenshot сохраняется в текущем каталоге.

user2376000
источник
2
Какой формат my_screenshot? Как посмотреть это?
Сиро Сантилли 新疆 改造 中心 法轮功 六四 事件
Хотя существует множество способов сделать скриншот в графическом интерфейсе, на самом деле это работает в простой консоли без X или любого графического интерфейса. Формат снимка экрана - PNG.
Mivk
4

Я использую Ubuntu 13.10, и у меня есть скрипт, который я только что написал, который может быть полезным. Я вижу ответы на эти вопросы, но мое решение не требует дополнительных установок.

#!/bin/bash
curDate=$(date)
imgExtension=".png"
imgName=$curDate$imgExtension
imgDirectory="/path/to/desires/save/directory/"
imgSavePath=$imgDirectory$imgName
gnome-screenshot --file="$imgSavePath"

Этот код сохранит скриншот без всплывающего диалогового окна. Он использует текущее время для имени файла, чтобы избежать проблем с дублированием имени файла.

Гэри Хатчинсон
источник