Vím, že otázka je stará, ale může to pomoci
můžete spustit plink (putty tools)
plink -v -ssh -m "cesta/k/příkazům.txt" -l usertologin -pw PASSWORDSERVER
commands.txt:
echo -e "PASSWORD\n" | sudo -S cat /etc/passwd
sudo -S znamená přijmout heslo ze stdin a s echo -e "heslo\n" předat heslo (a \n je jako stisknout intro -nový řádek- )
stejným způsobem můžete provést příkaz passwd:
> echo -e "OLDPASSWORD\nNEWPASSWORD\nNEWPASSWORD" | passwd
Proč zde používáte plink? Obecně byste použili plink k volání neinteraktivního skriptu na vzdáleném hostiteli. Pokud chcete dělat interaktivní věci (jako je úprava souboru), stačí ssh na server (buď z vašeho shellu, pomocí klienta 'ssh' na Linuxu nebo spuštěním putty na Windows), pak soubor upravte.
Více informací o plink a některé příklady naleznete zde.
Proč Plink? místo toho použijte SSH. SSH by také potřeboval -t
možnost pro sudo
commands.Z manuálové stránky 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.