NorfiPC
NorfiPC » Comandos Windows » Crear macros con DOSKEY

Como usar el comando DOSKEY para crear Macros en la consola de CMD

Como simplificar y abreviar la ejecución y uso de la consola utilizando el comando DOSKEY, como crear, guardar y cargar los macros. Códigos y ejemplos prácticos.
DOSKEY es uno más de los comandos disponibles en la línea de comandos de Windows, especialmente útil para todo el que utilice a menudo la consola de CMD, permite personalizar y abreviar y facilita mucho la forma de utilizarla.
Con DOSKEY se pueden crear macros, pequeñas funciones que se cargan en la memoria de la consola y al ejecutarlos reproducen los comandos que los componen.


Ejemplo del uso del comando DOSKEY en la práctica


Un simple ejemplo, si utilizas a menudo la Calculadora de Windows, puedes crear con DOSKEY un macro para acceder a ella fácilmente de la siguiente forma.
Escribe o pega en la consola de CMD y presiona Enter:
DOSKEY c=calc.exe
Ahora escribiendo la letra c y presionando la tecla Enter, se abre la Calculadora.
Es solo un ejemplo, puedes crear macros diferentes, de acuerdo al uso que le das y lo que realizas en la consola.
Puedes crear también macros que ejecuten cadenas de comandos, como en el siguiente ejemplo.
Escribe o pega en la consola de CMD y presiona Enter:
DOSKEY nc=md $1$Tcd $1V
Este macro ejecuta dos comandos uno a continuación de otro, MD (crear directorio) y CD.
Cuando escribes las letras cd un nombre y oprimes Enter, se creará una nueva carpeta donde iniciaste la consola, con el nombre que especificaste.
O sea nc Datos+Enter crea la carpeta Datos, si lo vuelves a ejecutar creas otro directorio dentro de este.
Así mismo creando el siguiente macro te aseguras de hacer lo anterior creando la carpeta siempre en el escritorio, pero con las letras nd:
DOSKEY nd=pushd %USERPROFILE%\Desktop $Tmd $1$Tcd $1


Desventajas y limitaciones del comando DOSKEY


La gran desventaja de DOSKEY es que solo guarda en memoria los macros en la sesión actual de la consola, cuando la reinicias tienes que volver a crear o cargar los macros para que funcionen.

Los macros se pueden guardar de la siguiente forma:
DOSKEY /macros > archivo
Y para cargarlos después que inicies la consola:
DOSKEY /macrofile=archivo

Esta es la manera tradicional que trae el programa para guardar o cargar los macros pero muy poco útil en la práctica, para hacerlo de una forma alternativa sigue los siguientes pasos:


Como guardar los macros con el comando DOSKEY


• Crea los macros en un archivo de texto sin abrir la consola, en el Bloc de notas, pega la siguiente plantilla y después la puedes modificar a tu forma y agregarle los macros que desees:
g=start http://google.com
n=start notepad.exe
c=start calc.exe
e=explorer.exe /select,C:\
s=cls
nd=pushd %USERPROFILE%\Desktop $Tmd $1$Tcd $1
• Guarda el archivo en la raíz del disco C con el nombre: macro.txt
• Inicia REGEDIT y accede a la siguiente clave del Registro:
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
• En el panel de la derecha crea un Nuevo valor de cadena de nombre: AutoRun, dos clics en él y pega o escribe: DOSKEY /macrofile=C:\macro.txt

Es todo, ahora cuando inicies la consola de CMD ya tendrás los macros que especifiques en el archivo de texto macro.txt cargados en memoria.
Lo anterior también lo puedes hacer descargando y combinando el script del Registro en el siguiente vínculo:

Scripts para agregar en el autorun de la consola de cmd cargar macros de DOSKEYScripts para agregar en el autorun de la consola de CMD cargar macros de DOSKEY


Parámetros y sintaxis para utilizar el comando DOSKEY


DOSKEY nombre_macro=texto

nombre_macro Especifica el nombre de una macro creada.
texto Especifica comandos que se desean grabar.
/REINSTALL Instala una nueva copia de Doskey.
/LISTSIZE=tamaño Establece el tamaño del búfer de comandos.
/MACROS Muestra todas las macros de Doskey.
/MACROS:ALL Muestra todas las macros de DOSKEY de todos los ejecutables que tengan macros de Doskey.
/MACROS:nombre Muestra todas las macros de DOSKEY del ejecutable.
/HISTORY Muestra todos los comandos guardados en la memoria.
/INSERT El nuevo texto se introduce en el texto anterior.
/OVERSTRIKE El nuevo texto sobrescribe el texto anterior.
/EXENAME=ejecutable Especifica el ejecutable.
/MACROFILE=archivo Especifica un archivo de macros para instalar.


Métodos del teclado que permite el comando DOSKEY


Flechas ARRIBA y ABAJO recuperan comandos
Escape limpia la línea de comandos
F7 muestra comandos usados
Alt+F7 elimina comandos usados
F8 busca comandos
F9 selecciona un comando por número
Alt+F10 elimina definiciones de macros.



Símbolos utilizados en las Macros de DOSKEY


$G o $g
Redirecciona la salida de datos. Se usa para enviar el resultado de la operación a un dispositivo o archivo distinto de la pantalla. Equivalente al carácter > de DOS.
$G$G o $g$g
Añade la salida de datos al final de un archivo (en lugar de sobreescribirlo). Equivalente al signo de DOS >>.
$L o $l
Redirecciona entrada de datos. Se utiliza para que nuestra macro lea datos de un dispositivo o archivo, en lugar de desde el teclado. Equivalente a <.
$B o $b
Envia el resultado de la macro a otro comando para su ejecución. Equivalente a |.
$T o $t
Separa comandos y permite su ejecución secuencial. Equivalente a &
$$
Especifica el signo $
$1 a $9
Representan cualquier información que debe ser introducida por el usuario de la macro. Similares a los parametros %0 a %9

Páginas relacionadas