Sé que la pregunta es antigua pero esto puede ayudar
puede ejecutar plink (herramientas de masilla)
plink -v -ssh -m "ruta/hacia/comandos.txt" -l usuario para iniciar sesión -pw PASSWORDSERVER
comandos.txt:
echo -e "PASSWORD\n" | sudo -S cat /etc/passwd
sudo -S es para recibir la contraseña de stdin y con el echo -e "contraseña\n" es para pasar la contraseña (y \n es como presionar intro -nueva línea-)
de la misma manera que puede ejecutar el comando passwd:
> echo -e "OLDPASSWORD\nNEWPASSWORD\nNEWPASSWORD" | passwd
¿Por qué estás usando un plink aquí? En general, usaría un plink para llamar a un script no interactivo en un host remoto. Si desea hacer cosas interactivas (como editar un archivo), simplemente ssh al servidor (ya sea desde su shell, usando el cliente 'ssh' en Linux o ejecutando PuTTY en Windows), luego edite el archivo.
Puede encontrar más información sobre plink y algunos ejemplos aquí.
¿Por qué Plink? use SSH en su lugar. También SSH necesitaría -t
opción para sudo
comandos.Desde la página man de ssh:
-t Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote
machine, which can be very useful, e.g. when implementing menu services. Multiple -t options force tty
allocation, even if ssh has no local tty.