
Я работаю над скриптом bash для автоматизации браузера w3m с помощью xdotool. Я разместил этот скрипт в экземпляре aws ubuntu, но при выполнении этого скрипта я получаю следующую ошибку:
Error: Can't open display: (null)
Failed creating new xdo instance
No protocol specified
ниже скрипт
#!/bin/sh
filename="links"
while read line; do
export DISPLAY=:0
export XAUTHORITY=/home/ubuntu/.Xauthority
"w3m $line"
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Return
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Return
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Tab
xdotool key Return
xdotool key Return
sleep 30m
done < $filename
решение1
xdotool
это "командная строка"Х11инструмент автоматизации". Это самая первая строка страницы руководства. Для этого требуются X.Ваш экземпляр AWS Ubuntu, вероятно, не работает под управлением X. Хотя вы можете установить его, это не то, что обычно устанавливается или используется на экземпляре AWS.
w3m
текстовый веб-браузер. Хотя он может работать в эмуляторе терминала X, X не требуется, и никакие функции X не используются.
Для автоматизации текстовых программ командной строки используйтеожидатьили одна из библиотек типа expect для языков программирования. Например, perl'sОжидать.pmили питонаpожидать.