Ich weiß, dass die Frage alt ist, aber das kann helfen
Sie können plink (Putty-Tools) ausführen
plink -v -ssh -m "path/to/commands.txt" -l usertologin -pw PASSWORDSERVER
Befehle.txt:
echo -e "PASSWORD\n" | sudo -S cat /etc/passwd
sudo -S soll das Passwort von stdin erhalten und mit dem echo -e "password\n" das Passwort übergeben (und \n ist wie intro -new line- drücken)
genauso können Sie den passwd-Befehl ausführen:
> echo -e "OLDPASSWORD\nNEWPASSWORD\nNEWPASSWORD" | passwd
Warum benutzt du hier einen Plink? Im Allgemeinen würden Sie einen Plink verwenden, um ein nicht interaktives Skript auf einem entfernten Host aufzurufen. Wenn Sie interaktive Dinge tun möchten (wie eine Datei bearbeiten), senden Sie einfach eine SSH-Verbindung zum Server (entweder von Ihrer Shell aus, mit dem 'ssh'-Client unter Linux oder durch Ausführen von Putty unter Windows) und bearbeiten Sie dann die Datei.
Weitere Informationen zu plink und einige Beispiele finden Sie hier.
Warum Plink? Verwenden Sie stattdessen SSH. Auch SSH würde -t
benötigen Option für sudo
Befehle. Von der SSH-Manpage:
-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.