Vzdálené počítače nemusí být nainstalovány. Můžete nainstalovat program expect na místní pracovní stanici nebo VM (virtuální box) nebo jakýkoli *nix box a napsat obal, který volá tento skript .ex (expect) (může dojít k malým změnám mezi distribucí a distribucí, testováno na 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
K použití passwd
nepotřebujete přístup root .
Tohle by mělo fungovat dobře.
passwd <<EOF
old password
new password
new password
EOF
Maximální počet souborů/adresářů na Linuxu?
Jak mohu sledovat, co se vkládá do standardního výstupního bufferu, a přeruší se, když je do roury uložen specifický řetězec?