¿Método o aplicación para actualizar archivos y/o aplicaciones en muchas computadoras remotas?

¿Método o aplicación para actualizar archivos y/o aplicaciones en muchas computadoras remotas?

Tengo varias máquinas con Windows 10 y Windows 7 que funcionan de forma remota. A veces, es necesario actualizar ciertos archivos o ejecutables. Esto implicaría lo siguiente.

  1. Cerrar el programa en ejecución.
  2. Eliminar su ejecutable actual
  3. Copia el nuevo ejecutable
  4. Reemplace (elimine y copie) cualquier archivo según sea necesario
  5. Reiniciar el programa

Me preguntaba si existe algún tipo de aplicación que me permita controlar esto en sistemas individuales (actualización individual) o en todos los sistemas (actualización masiva).

Respuesta1

En primer lugar, las recomendaciones de software específicas están fuera del alcance deSuperusuario. Intentarhttps://softwarerecs.stackexchange.com/, en cambio.

Sin embargo, puede escribir un script por lotes simple para hacer esto, si hay un repositorio central con los archivos nuevos.

  • Usarmatar tareaspara detener una aplicación en ejecución.
  • Utilice copia* o mejor,robocopia, para sobrescribir los archivos antiguos con los nuevos (robocopiaEspecifiquemos la fecha para evitar que se sobrescriba.más nuevoarchivos antiguos), especificando la ruta UNC completa. Las alternativas serían utilizarftpoSFTPpara transferir los archivos. Al copiar los archivos nuevos sobre los antiguos, efectivamente ha eliminado los antiguos.
  • Utilizar elcomenzarcomando para reiniciar la aplicación.

Por supuesto, existen complicaciones:

  • ¿Bajo las credenciales de quién se ejecuta cada aplicación? Su script debe ejecutarse con las mismas credenciales al reiniciar la aplicación; si siempre usa System, el usuario local tendrá dificultades para interactuar con la aplicación. Para todos los demás fines, el script podría ejecutarse como System.
  • ¿Deben reemplazarse las aplicaciones?siemprereiniciarse? Si desea determinar si se está ejecutando al principio, verifique los resultados dematar tareasy utilícelo para determinar si se debe reiniciar.
  • El uso de SFTP requiere la instalación de otras aplicaciones en el servidor y el cliente.
  • Seríamuyútil para registrar un registro del trabajo del guión.

Respuesta2

Integrados en Windows están WMI (Instrumental de administración de Windows) y WinRM (Administración remota de Windows), ambos hacen lo mismo pero con diferentes conexiones de red. Además, Windows puede copiar archivos a otra computadora de la misma manera que copia archivos en una sola computadora.


Este archivo por lotes le proporcionará un archivo de texto de las computadoras encendidas en su red.

for /f "skip=3 delims=\" %%A in ('net view ^| findstr /v /C:"The command completed successfully"') do Echo %%A >> c:\computerlist.txt

Para eliminar todas las instancias de un proceso en la red

wmic /node:@c:\computerlist.txt process where "name='notepad.exe'" call terminate

Para copiar archivos. C$ es un recurso compartido administrativo oculto que sólo los administradores pueden utilizar.

copy c:\somefolder\file.exe \\127.0.0.1\C$\Somefolder\file.exe

Vea for /?cómo hacerlo arriba recorriendo el buclelistadecomputadoras.txt. Coloque la siguiente línea en un archivo por lotes. Elimina la parte del eco para hacer algo.

for /f "usebackq delims=" %%A in ("C:\Folder\computerlist.txt.txt") do echo copy "c:\folder\file.exe" "\\%%A\C$\folder\file.exe

No tiene sentido borrar y copiar.


Para iniciar un proceso invisible en una computadora remota (será visible si se inicia en la computadora local). Aquí estamos especificando una sola computadora en lugar de un archivo de texto de computadoras.

wmic /node:127.0.0.1 process call create "c:\\windows\\notepad.exe"

Para obtener ayuda for /?, escriba wmic /?, wmic process get /?, wmic process call /?. También wmic /format /?y wmic /node /?.

información relacionada