Estoy usando lo siguiente para iniciar sesión automáticamente en un servidor remoto y luego ejecutar comandos enumerados en un commands.txt
, como este:
C:\path\to\putty.exe -load "[Sessionname]" -l [user] -pw [password] -m C:\path\to\commands.txt
commands.txt
contiene lo siguiente:
ps -elf|grep 'sometext'
Sin embargo, cuando intento hacerlo, aparece una nueva ventana para PuTTY, que se cierra y se cierra al instante después de iniciar sesión. Como resultado, no puedo ver el resultado de los comandos.
No entiendo lo que está pasando aquí. ¿Estoy equivocado en mi enfoque o necesito tomar más medidas para hacer que la ventana de PuTTY haga una pausa antes de salir?
command-line
ssh
unix
putty
Peter Mortensen
fuente
fuente
Respuestas:
Debe usar
plink.exe
(una interfaz de línea de comandos para los back-end PuTTY) y noputty.exe
Lo obtienes de la página de descarga de PuTTY
Sin tintineo:
Parece que la única forma es usar las
-log <logfile>
opciones y luego imprimir su contenido y eliminarlo.fuente
-log
Primero, necesitaría crear un archivo separado que contenga todos los comandos que desea ejecutar.
Ejemplo: me gustaría descargar e instalar Drupal en mi dominio usando PuTTY. Para hacer eso debes:
Primero cree un archivo .txt. Dentro de ese archivo están los comandos. Los míos son: " drush dl drupal " siguiente línea, " drush si --account-name = [nombre de cuenta] --account-pass = [pase de cuenta] --db-url = mysql: // [usuario]: [pasar ] @ localhost / [nombre de la base de datos] --y "
Después de guardar ese archivo, ahora va a crear un archivo BAT o escribirlo en el indicador CMD:
putty.exe -ssh [domain name] -l [username] -pw [password] -m [the directory of the .txt file you created which contains the codes you want to be executed]
fuente
Su enfoque parece bueno, sin embargo, hay una configuración predeterminada en el comportamiento que le está causando problemas aquí y probablemente haciéndole creer que no está sucediendo nada.
Su sesión finaliza inmediatamente después de que se ejecutó el comando, y PuTTY cierra la ventana por defecto. Consulte la documentación de PuTTY sobre cómo cambiar este comportamiento para su sesión.
fuente
session-noclose
y use esa en las secuencias de comandos.No habría ningún problema si solo desea crear el archivo por lotes para abrir la máquina Unix. A continuación se muestra el ejemplo:
La ruta PuTTY debe estar entre comillas dobles, como "C: \ Archivos de programa \ putty \ putty.ext"
machinename = machinename sin comillas dobles
contraseña = con comillas
fuente
Además de la respuesta de Aviram:
A continuación se muestra el ejemplo de cómo ejecutará los comandos PuTTY desde el símbolo del sistema:
Primero vaya al directorio de instalación de PuTTY, por ejemplo
C:\Program Files\PuTTY
, y luego ejecute el siguiente comando:fuente