Você teria user_create_script como este
#!/usr/bin/expect -f
set fh [open servers_list r]
while {[gets $fh server_name] != -1} {
spawn ssh -t user@$server_name sudo /usr/sbin/useradd david
expect "password:"
send "pass123\r"
expect eof
}
close $fh
Eu assumo que seu usuário remoto não requer uma senha para o sudo.
Mais documentação sobre o Tcl (sobre a qual o expect é construído), incluindo tutoriais, está aqui: link