Korzystam z dokumentów tutaj w skrypcie bash, aby zautomatyzować instalację i konfigurację, w której hasło jest wymagane wiele razy. Podaję hasło raz, a skrypt przekazuje je do różnych poleceń. W większości przypadków podejście oparte na dokumencie obsługuje tę grzywnę. Jednak w jednym przypadku pojawia się ten błąd:
Enter VNC password: stty: standard input: Inappropriate ioctl for device
Verify password:
stty: standard input: Inappropriate ioctl for device
Zauważ, że ten komunikat o błędzie pochodzi z x11vnc -storepassword
(nie z sudo
).
Mój problem dotyczy x11vnc -storepasswd
i oto mój kod:
sudo x11vnc -storepasswd ~/.vnc/passwd << ENDDOC
password
password
y
ENDDOC
To oczywiście (z błędu) nie działa. Byłbym wdzięczny za działający przykład implementacji sudo x11vnc -storepasswd ~/.vnc/passwd
w skrypcie.
W razie potrzeby monity wyglądają następująco:
Wprowadź hasło VNC:
Potwierdź hasło:
Zapisać hasło do /home/user/.vnc/passwd? [y] / nn
Czy używanie expect
będzie lepszym rozwiązaniem? Jeśli tak, jak miałbym go użyć w tym przypadku? (Nigdy wcześniej nie korzystałem, expect
ale od czasu zamieszczenia tego pytania sprawdziłem wiele przykładów i nie mogę expect
samodzielnie pracować).
sudo
niego pochodzix11vnc -storepassword
. Próbowałem różnychexpect
podejść i wydaje mi się, że nie potrafię tego zrobić poprawnie. Byłby bardzo wdzięczny przykład użyciaexpect
hasła dox11vnc -storepassword
. Zaktualizuję moje pytanie, aby uniknąć dalszych nieporozumień.