5 declaraciones IF para usar en secuencias de comandos por lotes de Windows más inteligentes

5 declaraciones IF para usar en secuencias de comandos por lotes de Windows más inteligentes

Si trabaja mucho en archivos por lotes de Windows, el Declaración IF ofrece una forma muy poderosa de agregar flexibilidad a sus scripts.





En este artículo, aprenderá sobre los cinco tipos principales de declaraciones IF que puede usar en un archivo por lotes de Windows, cómo se ve la sintaxis correcta y un ejemplo realista para cada una.





Si está listo para comenzar a crear secuencias de comandos, ¡comencemos!





1. Comparar valores

Una de las cosas básicas que normalmente necesitará hacer en un script por lotes es comparar dos valores y seguir un curso de acción diferente según la comparación.

Por ejemplo, supongamos que desea escribir un script por lotes que verifique el tamaño del disco duro de su computadora a diario. Si tiene menos de 3 GB, desea recibir un informe por correo electrónico que diga 'Espacio en disco duro demasiado bajo'.



Para crear una secuencia de comandos que compare el espacio libre actual en el disco duro con su límite, debe crear la siguiente secuencia de comandos por lotes y guardarla como un archivo .bat.

|_+_|

WMIC es el componente de Instrumentación de administración de Windows de Windows que viene con una variedad de comandos que puede usar para extraer información de la PC. Así es como el comando 'wmic' en este script llama al espacio 'logicaldisk' y lo coloca en la variable FreeSpace. Ahora puede reemplazar la línea 'Eco No hay suficiente espacio libre' con un comando de correo electrónico blat para enviarle una alerta.





Finalmente, configure este script como un trabajo por lotes programado de Windows que se ejecuta a diario.

Si nunca antes ha usado blat, tenemos un artículo que le muestra cómo configurar blat. ¿No está familiarizado con la configuración de trabajos programados? Lo cubrimos con un artículo sobre cómo configurar las tareas programadas de Windows.





2. Comparaciones de cadenas

Otra valiosa comparación IF que puede hacer en un trabajo por lotes es comparando cadenas .

En el siguiente ejemplo, verá cómo verificar su versión de Windows usando un trabajo por lotes. Entonces puede comparar esto con su versión de Windows esperada.

Algunos usos de este script serían para auditorías de TI cuando necesite ejecutar rápidamente un script y asegurarse de que el sistema operativo actual sea el más reciente o si necesita una actualización.

Así es como se ve este script.

|_+_|

Así es como se ve la salida de este script.

La capacidad de comparar cadenas por lotes abre una lista completa de posibilidades. Si explora todos los información que puede obtener de un comando WMIC Verá cuántas estadísticas sobre su computadora puede monitorear. Puede utilizar trabajos por lotes programados para alertar sobre estos.

3. Compruebe si existe un archivo

Otra situación útil en la que una instrucción IF en un archivo por lotes es comprobar la existencia de un archivo de datos .

Muchas veces, el trabajo por lotes es solo una herramienta de monitoreo que puede programarse para buscar nuevos archivos de datos entrantes en un directorio específico.

Luego, el trabajo por lotes puede copiar ese archivo a otra ubicación donde se puede procesar o iniciar algún script de Windows que procesa el archivo en una salida de Excel.

(Hemos escrito en el pasado sobre cómo utilizar scripts de Windows para procesar datos en un archivo de Excel ; una buena lectura de antecedentes.)

Usar un archivo por lotes para verificar si un archivo existe en un directorio es rápido y fácil. Así es como se ve ese guión.

|_+_|

La comparación SI EXISTE es útil para muchas cosas.

Por ejemplo, si tiene un sistema o una aplicación en ejecución que crea nuevos registros de errores en una carpeta específica cuando hay un problema, puede ejecutar un trabajo por lotes de vez en cuando para controlar si se crean nuevos registros de errores para poder enviar una alerta.

4. Verifique si un comando falló

Un aspecto de la creación de secuencias de comandos de archivos por lotes que utilizan muy pocas personas o programadores de TI es buscando errores .

Hay muchos trabajos por lotes flotando por ahí que realizan tareas críticas de TI, como realizar copias de seguridad de archivos importantes o ejecutar operaciones de copia de archivos. Cuando estos trabajos por lotes fallan, los sistemas fallan y la gente se da cuenta.

Es mucho más inteligente recibir una alerta cuando su trabajo por lotes ha fallado en un comando antes de la gente empieza a darse cuenta. De esta forma, puede solucionar el problema de forma proactiva.

Puede hacer esto utilizando la variable% errorlevel% que la mayoría de las aplicaciones y comandos devuelven después de ejecutarse.

Todo lo que tiene que hacer es seguir su comando mediante el comando IF% ERRORLEVEL%. Si la aplicación o el comando devolvieron un cero, todo está bien. Si no es así, debe enviarse un correo electrónico a sí mismo.

|_+_|

No es necesario que sigas la ruta del correo electrónico. Siempre puede escribir un registro de errores que puede revisar todas las mañanas, o iniciar una segunda aplicación o comando que intente hacer la copia usando un comando alternativo. Cualquiera que sea la acción que desee realizar, IF% ERRORLEVEL% le permite hacerlo.

Si prefiere usar una declaración IF para verificar códigos de error específicos, Windows ofrece una bonita extensa lista de códigos de error .

5. Compruebe si faltan parámetros

La última instrucción IF útil no es un comando específico, sino para verificar que el script recibió los parámetros de entrada apropiados .

Por ejemplo, supongamos que ha escrito un script que ejecuta un comando xcopy desde una carpeta de entrada a una carpeta de red común utilizada por un equipo. El usuario solo necesita seguir el nombre de su secuencia de comandos con los parámetros que definen su ruta de archivo personal.

Obviamente, no puede ejecutar correctamente su secuencia de comandos sin la ruta especificada, por lo que puede colocar una declaración IF al comienzo de su secuencia de comandos para asegurarse de que se ingresaron ambos parámetros.

Así es como se ve.

|_+_|

Si nunca antes ha utilizado parámetros con secuencias de comandos por lotes, el símbolo de porcentaje seguido de un número representa la variable del parámetro. % 1 es el primer parámetro,% 2 es el segundo y así sucesivamente.

Los trabajos por lotes pueden ser eficaces

Muchas personas comienzan a utilizar trabajos por lotes para tareas simples que deben ejecutarse en secuencia. Con las declaraciones IF es posible agregar mucha más inteligencia a sus scripts.

Por supuesto, si realmente desea intensificarlo, podría considerar echar un vistazo a VBA con nuestra guía sobre creando su primera aplicación VBA , o incluso aprender a programar en Python.

A menudo, puede usar lenguajes de programación más avanzados como estos, o aprender a usar PowerShell, para realizar muchas de las mismas tareas para las que usa actualmente los trabajos por lotes.

Cuota Cuota Pío Correo electrónico Elimine estos archivos y carpetas de Windows para liberar espacio en disco

¿Necesita liberar espacio en el disco de su computadora con Windows? Estos son los archivos y carpetas de Windows que se pueden eliminar de forma segura para liberar espacio en el disco.

Leer siguiente
Temas relacionados
  • Ventanas
  • Programación
  • Ventanas
Sobre el Autor Ryan Dube(942 Artículos publicados)

Ryan tiene una licenciatura en Ingeniería Eléctrica. Ha trabajado 13 años en ingeniería de automatización, 5 años en TI y ahora es ingeniero de aplicaciones. Antiguo editor en jefe de MakeUseOf, ha hablado en conferencias nacionales sobre visualización de datos y ha aparecido en la televisión y la radio nacionales.

Cómo transferir archivos de PC a PC usando wifi windows 10
Más de Ryan Dube

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse