Я использую здесь документы в скрипте bash для автоматизации установки и настройки, где пароль требуется много раз. Я ввожу пароль один раз, и скрипт передает его различным командам. В большинстве случаев подход здесь-документа справляется с этим штрафом. Однако в одном случае я получаю эту ошибку:
Enter VNC password: stty: standard input: Inappropriate ioctl for device
Verify password:
stty: standard input: Inappropriate ioctl for device
Обратите внимание, что это сообщение об ошибке от x11vnc -storepassword
(не от sudo
.)
Моя проблема связана с x11vnc -storepasswd
вот моим кодом:
sudo x11vnc -storepasswd ~/.vnc/passwd << ENDDOC
password
password
y
ENDDOC
Это очевидно (из ошибки) не работает. Я был бы признателен за рабочий пример того, как реализовать sudo x11vnc -storepasswd ~/.vnc/passwd
в сценарии.
Если это помогает, подсказки выглядят так:
Введите пароль VNC: Подтвердите
пароль:
Напишите пароль в /home/user/.vnc/passwd? [у] / пп
Будет ли использование expect
лучшим решением? Если так, как бы я использовал это в этом случае? (Я никогда не использовал expect
раньше, но с момента публикации этого вопроса я просмотрел много примеров, и я не могу приступить expect
к работе самостоятельно.)
sudo
она исходит отx11vnc -storepassword
. Я пробовал разныеexpect
подходы, и я не могу понять это правильно. Был бы очень признателенexpect
за пример использования пароля дляx11vnc -storepassword
. Я обновлю свой вопрос, чтобы избежать дальнейшей путаницы.