Mesin jarak jauh tidak perlu diharapkan terpasang. Anda dapat menginstal ekspektasi pada workstation lokal atau VM (virtualbox) atau kotak * nix mana pun, dan menulis pembungkus yang memanggil skrip .ex (harapan) ini (mungkin ada perubahan kecil dari distro ke distro, ini diuji pada CentOS 5/6 ):
#!/usr/bin/expect -f
# wrapper to make passwd(1) be non-interactive
# username is passed as 1st arg, passwd as 2nd
set username [lindex $argv 0]
set password [lindex $argv 1]
set serverid [lindex $argv 2]
set newpassword [lindex $argv 3]
spawn ssh $serverid passwd
expect "assword:"
send "$password\r"
expect "UNIX password:"
send "$password\r"
expect "password:"
send "$newpassword\r"
expect "password:"
send "$newpassword\r"
expect eof
Anda tidak memerlukan akses root untuk menggunakan passwd
.
Seharusnya ini berfungsi dengan baik.
passwd <<EOF
old password
new password
new password
EOF
Jumlah maksimum file/direktori di Linux?
Bagaimana saya bisa memantau apa yang dimasukkan ke dalam buffer keluar standar dan pecah ketika string tertentu disimpan di dalam pipa?