Протестировать, работает ли Ваш монитор или от Вас, может использовать
$ xset q | grep Monitor
Monitor is On
Для определения яркости подсветки ЖКД, можно работать
$ xbacklight
70.000000
Я решил проблему.
Первой частью решения была информация Жиля о том, что xdotool - это всего лишь двоичный файл, так что нет необходимости его устанавливать. Достаточно просто скопировать исполняемый файл на удаленную машину (на которой у меня есть разрешение на запуск исполняемых файлов, хранящихся в моих собственных каталогах).
Обратите внимание, что когда я упоминаю ниже любую команду, я предполагаю, что переменная DISPLAY
установлена на дисплей, на котором запущена система Mathematica (в моем случае это было :0.0
). Это то, что я сделал сначала после входа в систему с помощью ssh, перед выполнением любой из приведенных ниже команд.
Следующим шагом было распознавание того, что когда экран заблокирован, экранная заставка Gnome захватывает события клавиатуры, поэтому любые нажатия клавиш, отправленные в окно системы Mathematica, заканчивались вместо этого в экранной заставке. К счастью, заставку Gnome легко разблокировать из командной строки. Команда
gnome-screensaver-command -d
, которую я нашел здесь.
После этого я определил окно системы Mathematica, используя команду
xwininfo -root -tree | grep Mathematica
, которую нашел здесь. Правильное окно системы Mathematica было легко идентифицировано, поскольку в заголовке содержалось имя файла блокнота ("блокнот" - это имя системы Mathematica для определённого типа документа системы Mathematica, который обычно используется для вычислений) и звездочка, указывающая на то, что он не был сохранён. Каждая строка начинается с соответствующего идентификатора окна (шестнадцатеричный номер, например, 0x13371d)
После идентификации окна, я устанавливаю на него фокус, используя
xdotool windowactivate 0x13371d
(где шестнадцатеричный номер, конечно же, был идентификатором окна, полученным ранее) и, наконец, посылаю ему Control-S, используя
xdotool key ctrl+s
Затем я снова использую xwininfo, чтобы проверить, что звездочка действительно исчезла в заголовке окна, что указывает на то, что блокнот действительно был сохранен.