NorfiPC
NorfiPC » Modificar Windows » Trucos archivos batch.

Trucos, consejos y ejemplos para crear archivos batch

Algunos trucos, consejos, ejemplos para crear, editar y personalizar los archivos batch. Solucionar problemas y conflictos de su uso. Continuación del tutorial de comandos y archivos batch, curiosidades, bromas, anexos.
Trucos, consejos y ejemplos del Tutorial de comandos y archivos batch
Después de haber leído en una página anterior, el tutorial que introduce al mundo de la creación de los archivos batch, en este artículo podrás encontrar más información relacionada, que te será útil y te ayudará en la edición y creación de estas aplicaciones.
Encontrarás varios trucos para agregarle funcionalidad y personalizarlos a tu manera.
También podrás crear algunos archivos copiando y pegando algunos códigos de ejemplos prácticos.
Espero que te resulte interesante esta página.



Trucos útiles al crear nuestros archivos batch


Como crear saludos en los archivos batch


Un poco para impresionar a los ingenuos o personas con pocos conocimientos, o simplemente hacer que se inicien tus aplicaciones de manera afable al hacer tus archivos batch puedes incluir el nombre del usuario en la introducción, saludo o inicio del archivo batch de la siguiente forma:
@echo off

echo Bienvenido %username%, deseas continuar?
pause>nul



Como mostrar mensajes en los archivos batch


En la página anterior se mostraba la forma básica de mostrar mensajes en los archivos batch:
msg * aquí va el texto del mensaje 
pero el resultado es un poco seco.
Los scripts hechos en lenguaje VBScript ofrecen mensajes más expresivos, asi que es posible encadenar dos archivos de la siguiente forma.
Crear un archivo batch que escriba un script de forma temporal y a continuacion ejecutarlo, parece difícil pero es algo sencillo. Pruébalo con el siguiente código:
@echo off

echo MsgBox "Escribir un script y despues llamarlo.", 64, "NorfiPC" >%temp%\mensaje.vbs
start %temp%\mensaje.vbs
Como ves tiene un estilo algo diferente con un icono, titulo y hasta con sonido. Solo tienes que insertar el texto que quieres se muestre en el mensaje y en el título que tendrá la ventana en la parte superior.
Los scripts creados de esta forma se almacenarán en la carpeta Temp donde no causarán molestias y serán eliminados al ejecutar cleanmgr.exe.
De la misma forma anterior puedes generar mensajes con iconos y sonidos diferentes utilizando las siguientes líneas:
MsgBox "mensaje con icono de Error",0, "Error"
MsgBox "mensaje con icono de Error",16, "Error"
MsgBox "mensaje con icono de interrogacion",32, "Interrogacion"
MsgBox "mensaje con icono de advertencia",48, "Advertencia"
MsgBox "mensaje con icono de informacion",64, "Información"
MsgBox "mensaje con icono de Aplicacion",4096, "Aplicacion"



Como encadenar los archivos batch con scripts


Al encadenar archivos batch con scripts de la forma anterior, podemos ampliar y enriquecer las posibilidades de realizar acciones diferentes con los batch ya que los scripts tienen más recursos a su disposición.
Los ejemplos siguientes aprovechan el método SendKeys, con el cual es posible enviar ordenes al teclado de la misma forma que si lo hiciéramos físicamente, son solo dos ejemplos pero se pueden hacer infinidad de cosas diferentes.
El primero envía la combinación Control+Shift+Escape con lo que se inicia el Administrador de tareas.
El segundo la tecla F3 con lo que se abre la herramienta Buscar de Windows. Pruébalos.
@echo off

echo set WshShell = WScript.CreateObject("WScript.Shell") >%temp%\tskm.vbs
echo WshShell.SendKeys "^+{ESC}" >>%temp%\tskm.vbs
start %temp%\tskm.vbs
echo set WshShell = WScript.CreateObject("WScript.Shell") >%temp%\buscar.vbs
echo WshShell.SendKeys "{F3}" >>%temp%\buscar.vbs
start %temp%\buscar.vbs



Como cambiar el icono que muestran los archivos batch


En Windows de forma predeterminada, los archivos batch de extensión .CMD, al igual que los bat de extensión .BAT, muestran el mismo icono de las dos ruedas.
Es posible utilizar otro icono, para eso es necesario modificar la clave del registro donde se especifica el valor.
La clave del registro que contiene la información sobre los archivos batch es la siguiente:
HKEY_CLASSES_ROOT\cmdfile\DefaultIcon
y el valor, o sea la ruta al icono utilizado de forma predeterminada es:
%SystemRoot%\System32\imageres.dll,-68
Puedes emplear algunos de los iconos que se utilizan para los ejecutables exe solo dando dos clics en el valor predeterminado y pegando una de las siguientes rutas:
%SystemRoot%\System32\imageres.dll,-15
%SystemRoot%\System32\imageres.dll,-87
De la misma forma puedes emplear cualquier otro icono solo insertando la ruta necesaria, en la librería imageres.dll se almacenan multitud de iconos en los que escoger.
Si no sabes cómo verlos y extraerlos lee la siguiente página:
Información sobre el contenido de las librerías dll en Windows 7
Es posible modificar la clave indicada usando la línea de comandos, para eso utiliza el siguiente código en un archivo batch o introduciéndolo directamente en la consola, Inicio o Ejecutar.
REG ADD HKEY_CLASSES_ROOT\cmdfile\DefaultIcon /ve /t REG_EXPAND_SZ /d C:\Windows\System32\imageres.dll,-15 /f
Usar la línea de comandos para realizar modificaciones al Registro de Windows es peligroso, cualquier equivocación en un carácter puede ser desastroso, por lo que te aconsejo realizarlas con cautela y solo si posees conocimientos básicos en la edición del Registro.

Después que hagas la modificación indicada es necesario reiniciar la PC o sencillamente reiniciar explorer.exe, para que se hagan efectivos los cambios, si no sabes cómo crea un archivo batch con el siguiente código y ejecútalo:
@ECHO OFF
TASKKILL /F /IM explorer.exe
timeout /nobreak 04
start explorer.exe
También puedes reiniciar el explorador de otra manera, copia el siguiente código, pégalo directamente en el cuadro de Inicio o Ejecutar y oprime Enter:
CMD /C TASKKILL /F /IM explorer.exe & timeout /nobreak 04 & start explorer.exe



Restaurar la asociación de los archivos batch (cmd) y bat (bat)


Windows utiliza las extensiones de archivos para conocer qué tipo de información contienen y por lo tanto con que programas es necesario ejecutarlos, en ocasiones esta asociación se deteriora por diversas causas y entonces los archivos se muestran con un icono de archivo desconocido y al dar dos clics en ellos se abre el cuadro de dialogo donde escoger el programa necesario parar abrirlos.
Para restaurar la asociación de los archivos batch de extensión de archivo cmd, abre una ventana de comandos y pega lo siguiente y oprime Enter:
assoc .cmd
debe devolver lo siguiente: .cmd=cmdfile
si no es asi escribe:
assoc .cmd=cmdfile
Si esto no resuelve la situación descarga el siguiente archivo REG y agrega la clave que contiene a tu registro.
Descargar clave del registro Descargar clave para restaurar la asociación de archivos CMD
Para restaurar la asociación de los archivos bat de extensión de archivo bat, abre una ventana de comandos, pega lo siguiente y oprime Enter:
assoc .bat
debe devolver lo siguiente: .bat=batfile
si no es asi escribe:
assoc .bat=batfile
Si esto no resuelve la situación descarga el siguiente archivo REG y agrega la clave que contiene a tu registro.
Descargar clave del registro Descargar clave para restaurar la asociación de archivos BAT
Más información sobre la asociación de archivos en la siguiente página:
Como reparar y restaurar las asociaciones de archivos en Windows 7.



Como convertir los archivos batch en exe


Después de crear tus propios archivos batch para facilitar las tareas que realizas, si deseas publicarlos o compartirlos con tus amigos, tienes la opción de convertirlos previamente en archivos ejecutables EXE.
De esta forma conseguirás que nadie pueda modificarlos, los batch tienen la característica de que cualquiera puede alterar su código, solo agregando unas líneas con el modesto Bloc de notas.
Convertir un archivo batch o bat exe es algo sencillo, lee en la siguiente página como hacerlo y descarga gratis la aplicación necesaria:
Como convertir los archivos batch y bat en aplicaciones ejecutables EXE

Como insertar letras con acentos y caracteres especiales en los archivos batch


En los archivos batch para representar letras que llevan acentos, la ñ y otros caracteres especiales propios del idioma español y que se muestren correctamente en la consola de cmd al ejecutarse el batch, se requiere usar el método de los códigos alt. Lee como hacerlo en la siguiente página:
Como usar los caracteres especiales mediante el teclado en Windows.



Consejos, sugerencias y ejemplos para la creación de archivos batch


Usar los comodines en archivos batch

El signo asterisco * remplaza cadenas de caracteres.
Por ejemplo, usando DIR *.txt especificas que se listen todos los archivos en ese directorio con la extensión .txt.
El signo de interrogación ? remplaza pero solo un carácter. Podemos especificar mas signos de interrogación. Con lo que si especificamos dir s???*.* nos listaría los directorios y archivos con un nombre que empiecen por s y otras 3 letras cualquiera mas unos carácter cualquiera, a continuación él * que hace que se listen archivos con cualquier extensión.

Ejemplos sencillos de archivos batch para practicar


Código de ejemplo que muestra cómo obtener información del usuario y mostrarla usando un archivo batch.
Para usarlo, al igual que los siguientes códigos, cópialo, pégalo en un archivo de texto y guárdalo con cualquier nombre, pero que tenga la extensión de archivo CMD.


Sencillo ejemplo del uso interactivo del comando SET.


Ejemplo de un sencillo cálculo matemático, calcular el promedio de dos números.


Otro ejemplo de calcular el promedio, en este caso entre varios números.


Otro ejemplo de una sencilla operación matemática.


Un bucle de ejemplo, es decir la repetición infinita, en este caso de dos líneas.


Páginas relacionadas