Saya menggunakan di sini-dokumen dalam skrip bash untuk mengotomatiskan instalasi dan pengaturan di mana kata sandi diperlukan berkali-kali. Saya memasukkan kata sandi sekali dan skrip meneruskannya ke berbagai perintah. Dalam kebanyakan kasus, pendekatan dokumen di sini menangani masalah ini. Namun, dalam satu kasus saya mendapatkan kesalahan ini:
Enter VNC password: stty: standard input: Inappropriate ioctl for device
Verify password:
stty: standard input: Inappropriate ioctl for device
Harap perhatikan bahwa pesan kesalahan ini berasal dari x11vnc -storepassword
(bukan dari sudo
.)
Masalah saya terkait dengan x11vnc -storepasswd
dan ini kode saya:
sudo x11vnc -storepasswd ~/.vnc/passwd << ENDDOC
password
password
y
ENDDOC
Itu jelas (dari kesalahan) tidak berfungsi. Saya akan menghargai contoh kerja tentang cara menerapkan sudo x11vnc -storepasswd ~/.vnc/passwd
dalam skrip.
Jika itu membantu, petunjuknya terlihat seperti ini:
Masukkan kata sandi VNC:
Verifikasi kata sandi:
Tulis kata sandi ke /home/user/.vnc/passwd? [y] / nn
Apakah menggunakan expect
menjadi solusi yang lebih baik? Jika demikian, bagaimana saya menggunakannya dalam kasus ini? (Saya belum pernah menggunakan expect
sebelumnya tetapi saya telah melihat banyak contoh sejak memposting pertanyaan ini dan saya tidak bisa expect
bekerja sendiri.)
sudo
itu berasal darix11vnc -storepassword
. Saya telah mencoba berbagaiexpect
pendekatan dan sepertinya saya tidak bisa melakukannya dengan benar. Contoh menggunakanexpect
untuk memasukkan kata sandix11vnc -storepassword
akan sangat dihargai. Saya akan memperbarui pertanyaan saya untuk menghindari kebingungan lebih lanjut.