A continuación se muestra el comando de archivo por lotes que estoy utilizando actualmente para apagar las computadoras remotas a través de la red LAN.
Esto es lo que hace.
- He especificado la dirección IP de las computadoras remotas en un archivo de texto llamado list.txt
- He añadido una IP como 0.0.0.0 en la parte inferior de todas las direcciones IP remotas de la computadora.
- El siguiente archivo por lotes comprobará si las computadoras están disponibles a través de LAN.
- Si la computadora está disponible, apagará la PC remota, de lo contrario pasará a la siguiente IP.
- Cuando el archivo por lotes lee 0.0.0.0 por fin se apagará automáticamente la computadora maestra.
Mi problema es que no puedo ejecutar este lote para más de 7 computadoras remotas. Si agrego más de 7 IP de PC remotas en list.txt El archivo por lotes se bloquea y la acción no se completa. Por favor, avíseme si cometí algún error en el código o cómo puedo solucionar este problema.
Quiero ejecutar este archivo por lotes para un mínimo de 12 PC remotas
@echo off
setlocal enableextensions enabledelayedexpansion
for /f %%a in (C:\Users\calcopm\Desktop\list.txt) do (
SET IP =%%a
SET C=0
IF %%a equ 0.0.0.0 (
shutdown /s
) ELSE (
ping -n 1 %%a | find "TTL=" >NUL: && SET C=1
IF !C! equ 1 (
psshutdown \\%%a
) else (
ECHO REMOTE %%a IS NOT REACHABLE
)
)
)
fuente
Cambié mi script como se muestra a continuación y convertí de BAT a EXE usando una aplicación
Todavía me enfrentaba al mismo problema. Cuando estaba ejecutando los scripts usando el archivo exe (convertido usando BAT a EXE), lo ejecuté usando el archivo BAT estaba bien. Luego me di cuenta de que el convertidor de BAt a EXE tenía algunos problemas que estaban afectando la entrada del archivo EXE.
Luego convertí BAt a EXE con una aplicación diferente y funcionó como un encantamiento.
Resolví el problema ATLAST !!!!!!!!!!!!! ¡¡¡¡¡Uf!!!!!
fuente