All pastes #488955 Raw Edit

lcabrera

public text v1 · immutable
·published 2007-05-15 08:23 UTC
rendered paste body
REM Sincronización de la hora de la máquina:
@echo off
cls

REM
REM Fichero sugerido, entre otras, por las siguientes direcciones:
REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
REM http://guimi.net/descarga/tec-docs/pdc/default.bat.txt
REM http://www.itq.edu.mx/vidatec/espacio/aisc/windowsnt/ComandosNET.htm
REM http://www.microsoft.com/technet/prodtechnol/windowsserver2003/es/library/ServerHelp/dd619380-bb33-4d3a-b0b5-29c620600035.mspx?pf=true
REM http://www.elhacker.net/ProgramacionBat.htm

echo Parametrizamos el script
REM ~~~~~~~~~~~~~~~~~~~~~~~~
SET SETPAUSE=0
SET DEBUG=0
SET GETDATE=1
SET GETLOGON=0
SET NET_CONNECT=1
SET SERVICES_START=0
SET SET_VARS=1
SET GETFTP=0

echo Cargamos los datos de servicio
REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SET NTPSERVER=192.168.1.1
SET APPSERVER=192.168.1.1
SET USERNAME=%USERNAME%
SET LOGONSERVER=%LOGONSERVER%
SET USERDOMAIN=%USERDOMAIN%

REM PAUSE

echo Se realizan los saltos condicionales
REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:BEGIN

IF %DEBUG%==1 echo -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
IF NOT %DEBUG%==0          GOTO EXECUTE_DEBUG
IF NOT %GETDATE%==0        GOTO EXECUTE_GETDATE
IF NOT %GETLOGON%==0       GOTO EXECUTE_GETLOGON
IF NOT %NET_CONNECT%==0    GOTO EXECUTE_NET_CONNECT
IF NOT %SERVICES_START%==0 GOTO EXECUTE_SERVICES_START
IF NOT %SET_VARS%==0       GOTO EXECUTE_SET_VARS
IF NOT %GETFTP%==0         GOTO EXECUTE_GETFTP
IF NOT %OS%==Windows_NT    GOTO EXECUTE_NO_XP

IF %SETPAUSE%==1 PAUSE

REM -------------------------------------------------------------------------

IF %DEBUG%==1 echo Finalizamos el script NetLogn
REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

IF %SETPAUSE%==1 PAUSE

REM Nos movemos al directorio de documentos del usuario
cd %USERPROFILE%\Mis Documentos

REM Mandamos un aviso al dominio como que hemos entrado en él.
net send * "%USERNAME% acaba de iniciar sesión."

IF %DEBUG%==1 echo.
IF %DEBUG%==1 echo.
IF %DEBUG%==1 echo -------- Conexion realizada --------
IF %DEBUG%==1 echo.
IF %DEBUG%==1 echo.


IF NOT %ERRORLEVEL%==0 GOTO ERROR

IF %SETPAUSE%==1 PAUSE

EXIT

REM -------------------------------------------------------------------------


:EXECUTE_DEBUG
	IF %DEBUG%==1 echo Sacamos el valor de varias variables, para depuración
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	IF %DEBUG%==1 echo %NTPSERVER% NTPSERVER
	IF %DEBUG%==1 echo %USERNAME% USERNAME
	IF %DEBUG%==1 echo %LOGONSERVER% LOGONSERVER
	IF %DEBUG%==1 echo %USERDOMAIN% USERDOMAIN
	IF %DEBUG%==1 echo %NTPSERVER% NTPSERVER
	IF %DEBUG%==1 echo %APPSERVER% APPSERVER
	IF %DEBUG%==1 echo %SYSTEMDRIVE% SYSTEMDRIVE
	IF %DEBUG%==1 echo %USERPROFILE% USERPROFILE

	IF %SETPAUSE%==1 PAUSE
	SET DEBUG=0
	GOTO BEGIN


:EXECUTE_GETDATE
	IF %DEBUG%==1 echo Sincronización Horaria
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	REM La sincronización horaria, en según qué sistemas, depende de los 
	REM permisos del usuario que pretende acceder al sistema.
	REM 
	REM echo %DATE%
	NET TIME \\%NTPSERVER% /SET /YES
	REM echo %DATE%

	IF %SETPAUSE%==1 PAUSE
	SET GETDATE=0
	GOTO BEGIN


:EXECUTE_GETLOGON
	IF %DEBUG%==1 echo Hacemos login en el dominio
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	REM net logon %DOMINIO%\%USUARIO%
	REM net logon %USUARIO% /domain:%DOMINIO%
	REM net logon %USUARIO% ? /domain:%DOMINIO%
	
	IF %SETPAUSE%==1 PAUSE
	SET GETLOGON=0
	GOTO BEGIN


:EXECUTE_NET_CONNECT
	IF %DEBUG%==1 echo Conectamos las unidades de Red
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	NET USE H: \\%APPSERVER%\Aplicaciones /PERSISTENT:NO /YES
	NET USE I: \\%APPSERVER%\BOT /PERSISTENT:NO /YES
	NET USE J: \\%APPSERVER%\CIM /PERSISTENT:NO /YES
	NET USE K: \\%APPSERVER%\Facturacion /PERSISTENT:NO /YES
	REM NET USE L: \\%APPSERVER%\Ftp /PERSISTENT:NO /YES	REM PIDE USUARIO y CONTRASEÑA
	NET USE M: \\%APPSERVER%\Legal /PERSISTENT:NO /YES
	NET USE N: \\%APPSERVER%\MDB32 /PERSISTENT:NO /YES
	NET USE O: \\%APPSERVER%\Musica /PERSISTENT:NO /YES
	NET USE P: \\%APPSERVER%\scanner /PERSISTENT:NO /YES
	NET USE Q: \\%APPSERVER%\Secretaria /PERSISTENT:NO /YES
	NET USE R: \\%APPSERVER%\SecretariaTecnica /PERSISTENT:NO /YES
	NET USE S: \\%APPSERVER%\Tesoreria /PERSISTENT:NO /YES

	IF %SETPAUSE%==1 PAUSE
	SET NET_CONNECT=0
	GOTO BEGIN


:EXECUTE_SERVICES_START
	IF %DEBUG%==1 echo Arrancamos varios servicios en cada máquina
	REM (Revisar la sintaxis y los permisos)
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	REM Net Start Alerta
	REM Net Start "Servicio Mensajería interna"
	REM Net Start Servidor
	REM Net Start Snmp
	REM Net Start Spooler

	IF %SETPAUSE%==1 PAUSE
	SET SERVICES_START=0
	GOTO BEGIN


:EXECUTE_SET_VARS
	IF %DEBUG%==1 echo Modificamos las variables de entorno del usuario
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	SET PATH=G:\;H:\;I:\;J:\;K:\;L:\;M:\;N:\;O:\;P:\;Q:\;R:\;S:\;%PATH%
	SET PATH=%SYSTEMDRIVE%\PYTHON25;%PATH%
	SET PATHEXT=.py;.pyw;%PATHEXT%

	SET HOMEDRIVE=%SYSTEMDRIVE%
	REM %HOMEDRIVE%=%SYSTEMDRIVE%

	IF %SETPAUSE%==1 PAUSE
	SET SET_VARS=0
	GOTO BEGIN


:EXECUTE_GETFTP
	IF %DEBUG%==1 echo Inicia sesion en el servidor FTP 
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~a
	NET USE Y: \\%APPSERVER%\Netlogon /PERSISTENT:NO /YES
	Y:
	REM echo -------- INICIAMOS EL FTP ----------
	ftp -s:accesoFTP.sh %APPSERVER%
	REM
	REM ## Un ejemplo de fichero accesoFTP.sh sería:
	REM (Lo pongo, como solo lectura, en la unidad netlogon)
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	REM anonymous
	REM hola@soy.yo
	REM lcd Z:\
	REM binary
	REM prompt
	REM cd GIC
	REM mget setup.exe
	REM quit
	REM

	Z:

	NET USE /DELETE Y: /YES

	REM echo Listamos el directorio actual
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	REM DIR

	IF %DEBUG%==1 echo Copiamos el fichero a su lugar de destino
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	copy Z:\setup.exe "%APPDATA%" /Y

	IF %DEBUG%==1 echo Ejecutamos y borramos el programa descargado
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	cd %APPDATA%
	"%APPDATA%\setup.exe"
	REM START /MIN "%APPDATA%\setup.exe"
	DEL "%APPDATA%\setup.exe" /Q

	IF %SETPAUSE%==1 PAUSE
	SET GETFTP=0
	GOTO BEGIN


:EXECUTE_NO_XP
	IF %DEBUG%==1 echo CUIDADO, este cliente no es compatible...
	REM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

	IF %SETPAUSE%==1 PAUSE
	REM SET NO_XP=0
	REM GOTO BEGIN


:ERROR
	IF %DEBUG%==1 echo Ha habido algún problema durante
	IF %DEBUG%==1 echo la carga del sistema.
	IF %DEBUG%==1 echo Comenteselo a su Administrador.