Имитация нажатия клавиши PrintScreen

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

Я могу сделать это вручную, но это утомительно, так как у меня много скриншотов.

Я вижу, что для этого могу использовать xdotool. Каково ключевое имя для экрана печати? (Я далеко от моего терминала Linux, и я не могу использовать xev удаленно), как я могу определить имена ключей, используя что-то помимо xev?

One Solution collect form web for “Имитация нажатия клавиши PrintScreen”

Не нужно «вызывать» кнопку PrtSrn , если вы устанавливаете ImageMagick, тогда вы можете сделать следующее в своем скрипте:

 import -window root output.png 

Если вы хотите wmctrl конкретное окно, вы можете сначала найти его идентификатор с помощью wmctrl (следующий wmctrl окна Firefox, отображающего этот пост, строка grep -ed должна быть уникальной.):

 id=$(wmctrl -l | grep -F 'bash - simulate' | cut -d ' ' -f 1) import -window $id window.png 

В качестве альтернативы, если вы знаете, какая часть экрана вам нужна, вы можете захватить весь экран, а затем использовать convert -chop чтобы вырезать то, что вам нужно, с рабочего стола.

ImageMagick обычно устанавливается с помощью пакета с именем imagemagick

  • X: узнать, видимо ли окно пользователю, т.е. не покрыто другими
  • Почему xdotool не щелкает при восстановлении позиции?
  • Сценарий Bash. Создать инструмент тестирования обезьян
  • Как я могу нажать клавишу Windows с помощью xdotool
  • xdotool sleep 1 vs sleep 1, любая разница?
  • Как определить, находится ли окно в фокусе?
  • Как получить идентификатор окна из xdotool Window Stack
  • Каков синтаксис для передачи вывода команды в xargs?
  • Есть ли проблема с использованием xdotool для прямого нажатия клавиш на окна Java?
  • xdotool: как искать окно по названию и классу с разными шаблонами (аналогично AutoHotkey)
  • сочетание клавиш для вставки текста
  • Linux и Unix - лучшая ОС в мире.