Automatizar la ejecución de comandos/scripts utilizando PuTTY
(2)
PuTTY tiene el
-m
, que puede usar para proporcionar una ruta a un archivo con una lista de comandos para ejecutar:
putty.exe [email protected] -m c:/local/path/commands.txt
Donde los
commands.txt
contendrán, en su caso, una ruta a su script de shell, como:
/home/user/myscript.sh
Aunque para la automatización, es mejor usar la herramienta de conexión de línea de comandos Plink , en lugar de la aplicación GUI PuTTY, como ya lo ha descubierto. Plink es parte del paquete PuTTY, por lo que todos los que tengan PuTTY también deberían tener Plink.
Plink (
plink.exe
) tiene los mismos argumentos de línea de comandos que PuTTY.
Y además de eso, puede especificar su comando directamente en su comando como:
plink.exe [email protected] /home/user/myscript.sh
o usando su entrada estándar
plink.exe [email protected] < c:/local/path/command.txt
(o, por supuesto, utilizará el mecanismo de redireccionamiento de su idioma, en lugar de
<
).
Tenga en cuenta que proporcionar un comando usando el
-m
o directamente en la línea de comandos implica un modo no interactivo, mientras que el uso de la entrada estándar usa un modo interactivo por defecto.
Por lo tanto, los resultados o el comportamiento pueden diferir.
Use los
modificadores
-t
y
-T
para forzar el modo interactivo y el no interactivo, respectivamente.
Estas son las cosas que necesito hacer:
- Abra putty.exe
- Ingrese nombre de usuario y contraseña.
- Ejecute un script de shell.
Estoy usando UFT (VB Scripting). Puedo abrir PuTTY pero no puedo ingresar el nombre de usuario y la contraseña ni ejecutar ningún comando con UFT.
¿Hay alguna otra manera de lograr esto? Lo busqué y descubrí que podemos usar Plink. Entonces el problema sería que todo el equipo tendrá que instalar Plink para ese propósito. Y eso no es posible.
Gracias por adelantado.
Puede agregar argumentos de cmd cuando inicie masilla directamente;
inicie C: / Users / putty.exe -load "server" -l userID -pw Password -m command.txt
¿No puede solicitar el nombre de usuario y pasar antes y pasar esto al ejecutable?