Batch para comprobar el estado de servicios Windows

Arrancar y detener servicios Windows.
NET START
NET STOP

Batch que permite comprobar el estado de un servicio Windows determinado y arrancarlo en caso de no estar en marcha.
Vamos a utilizar el comando sc query que nos da información del estado de los servicios.

	
for /F "tokens=3 delims=: " %%H in ('sc query NOMBRE_SERVICIO ^| findstr "  ESTADO"') do (
  if /I "%%H" NEQ "RUNNING" (
     net start NOMBRE_SERVICIO
  )
)

¿Cómo hacer que un servicio Windows esté siempre arrancado?
Con el batch anterior, ejecutándolo de forma periódica a través de una tarea programa de Windows.




Modificándolo ligeramente lo podemos usar para detener un servicio, en caso de no estarlo.

	
for /F "tokens=3 delims=: " %%H in ('sc query NOMBRE_SERVICIO ^| findstr "  ESTADO"') do (
  if /I "%%H" == "RUNNING" (
     net stop NOMBRE_SERVICIO
  )
)





Si el post te ha ayudado a salir de un marrón, te ha servido pá lo que sea o simplemente te ha gustado y quieres colaborar puedes pinchar en los anuncios ;)



Ejemplos robocopy con uso de parámetros de exclusión

Listo varios ejemplos de uso de robocopy utilizando los diferentes parámetros de exclusión disponibles.


Exlcuir todos los archivos con extensión .txt, copia recursiva (/E), si los archivos .txt ya existen en el destino no los elimina:

> robocopy c:\origen\ e:\destino\ /E /XF *.txt

Aún usando el parámetro /MIR si los archvos .txt ya existen en el destino no se eliminan:

> robocopy c:\origen\ e:\destino\ /MIR /E /XF *.txt



Ecluir todos los archivos recursivamente, es como hacer una copia de la estructura de carpetas:

> robocopy c:\origen\ e:\destino\ /E /XF * 



Ecluir una carpeta, si ya existe en el destino no se elimina:

> robocopy c:\origen\ e:\destino\ /E /XD "C:\origen\capreta1"

Ecluir varias carpetas, si ya existen en el destino no se eliminan:

> robocopy c:\origen\ e:\destino\ /E /XD "C:\origen\capreta1" "C:\origen\capreta2"





Si el post te ha ayudado a salir de un marrón, te ha servido pá lo que sea o simplemente te ha gustado y quieres colaborar puedes pinchar en los anuncios ;)


Como crear un plan de copias de seguridad usando robocopy y forfiles

Plataforma: Windows
Objetivo
Configurar un .bat que copie backups SQL que se guardan en local en un máquina y copiarlos en una unidad de red. Se quieren guardar los últimos 8 backups, pero en local sólo caben 3.

Prerrequisitos
Carpeta origen: C:\BackupSQL\
Carpeta destino: \\192.168.1.10\Servidor\Copias\
En la máquina en local sólo se guardan los 3 últimos backups
En la unidad de red queremos tener los últimos 8 backups

Continue reading


Ejemplos Robocopy

Ejemplo Robocopy 1
Copiar la estructura de carpetas recursivamente, sin los archivos que pueda haber, sólo las carpetas vacías:
·El parámetro /XF * excluye todos archivos
·El parámetro /E copia subdirectorios
·El parámetro /Z indica que es modo reiniciable, es caso de pérdida de conexión continúa donde estaba
Origen d:
Destino f:

> robocopy d:\CarpetaA\ f:\CarpetaANoFiles\ /E /Z /XF *	

Si además queremos generar un log añadimos el parámetro /LOG:nombreArchivoLog.txt: Continue reading


nslookup – testear registros DNS MX desde la línia de comandos Windows

Aplicable a Windows XP y Windows 7

Como testear los registros DNS de correos(MX) des de la línia de comandos?

Opción1:
En la línia de comandos accedemos al comando nslookup
C:\Users\Administrador>nslookup
Especificamos el tipo de registros, en nuestro caso MX
> set type=MX
Testeamos las DNS MX de por ejemplo marca.com
> marca.com
nslookup1

Opción2:
Con el comando nslookup passandole como paramteros el tipo de registro y el dominio:
C:\Users\Administrador>nslookup -type=MX marca.com


Cómo eliminar archivos en función de la extension

Aplicable a Windows Server 2008 y Windows Server 2008 R2

EL comando forfiles de Windows nos permite hacer una búsqueda en función de la extensión de los archivos y luego eliminarlos.

Por ejemplo, queremos eliminar todos los archivos con extensión .tmp de la carpeta c:\Windows\temp\
Primero listamos todos los archivos para comprobar que realmente la búsqueda es correcta antes de eliminar los documentos:

> forfiles /p "%systemroot%temp" /m *.tmp /C "cmd /c echo @file"

Si la búsqueda es correcta añadimos & Del @file para eliminarlos

> forfiles /p "%systemroot%temp" /m *.tmp /C "cmd /c echo @file & Del @file"

Parámetros:
· /p –> especifica la ruta donde se va a iniciar la búsqueda. Por defecto empieza en el directorio de trabajo actual.
· /m –> especifica el tipo de archivos. Si no se especifica busca cualquier tipo(*.*).
· /c –> para ejecutar comandos


Windows Robocopy: copiar sólo estructura de carpetas

Copiar la estructura de carpetas recursivamente, sin los archivos que pueda haber, sólo las carpetas vacías:
El parámetro /xf * excluye todos archivos
El parámetro /e indica recursividad, copia las subcarpetas
Origen d:
Destino f:

> robocopy d: f: /e /xf *

Si ademas queremos generar un log:

> robocopy d: f: /e /xf * /tee /log:EstructuraCarpetasLog.txt

Especificando carpetas. Si la carpeta destino no existe la crea:

> robocopy d:\folderA\ f:\copyfolderA\ /e /xf * 




Si el post te ha ayudado a salir de un marrón, te ha servido pá lo que sea o simplemente te ha gustado y quieres colaborar puedes pinchar en los anuncios 😉


Comando Windows Forfiles, ejemplos varios

Eliminar un archivo en concreto si tiene más de x días de antiguedad, en el ejemplo más de 10:

> forfiles /m test.txt /c "cmd /c Del test.txt " /d -10


Eliminar archivos de un tipo en concreto dentro de un directorio especificado con una antiguedad definida. En el ejemplo eliminar los archivos .rar de dentro la carpeta DATOS que tengan mas de 4 días de antiguedad:

> forfiles /p DATOS /M *.rar /c "cmd /c Del @file" /d -4


Ejemplo: eliminar carpetas recursivamente que sean más antiguas de 365 días dentro la Test de forma silenciosa:

> forfiles /p "C:\TEST" /d -365 /c "cmd /c echo @file tiene mas de 1 año de antiguedad. & rd @FILE /s /Q" 






Si el post te ha ayudado a salir de un marrón, te ha servido pá lo que sea o simplemente te ha gustado y quieres colaborar puedes pinchar en los anuncios ;)