Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
Trucos Cómo manipular parámetros desde un archivo BATCH...

Cómo manipular parámetros desde un archivo BATCH...

Autor: Enviado por: Hurricane - Enviado con fecha: 18-01-2005 10:54:35.
Este truco es válido para todas las versiones de Windows que de una u otra forma utilicen comandos DOS.

Este ejemplo imprime el contenido de archivos de texto puro; los nombres son pasados desde la Windows mediante el sistema de Marcar/Arrastrar hasta el nombre del programa BATCH. Lo llamaremos PRNTXT.BAT, y su
contenido será:

@ECHO OFF
REM Si no se pasan parámetros, muestra la ayuda...
IF %1.==. GOTO HELP

:LOOP
REM Si no existe el archivo, envía un mensaje de error.
IF NOT EXIST %1 GOTO NOFILE
ECHO Imprimiendo "%1"...
TYPE %1 > PRN
SHIFT
IF NOT %1.==. GOTO LOOP
GOTO FIN

:HELP
ECHO PRNTXT V1.0 - ConfigurarEquipos.com
ECHO Imprime uno o más archivos de texto.
ECHO Ejemplo: PRNTXT C:/AUTOEXEC.BAT
ECHO.
GOTO FIN

:NOFILE
ECHO ¡El archivo "%1" no existe
ECHO.

:FIN
EXIT


La clave en el manejo de los parámetros está en las variables %1 a %9, donde %1 es el primer parámetro, %2 es el segundo, y así sucesivamente. También existe el %0, que representa al nombre del programa (o la forma en que fué llamado). Como sólo hay 9 variables %, para el manejo de parámetros se utiliza la orden "SHIFT", el que desplaza el parámetro %2 a %1, %3 a %2, y así sucesivamente (se
desplazan a la variable inferior). Para comprobar si quedan o no parámetros, se verifica con la condición "IF %1.==.".

Un Ejemplo de llamada: DOS/PRNTXT.BAT AUTOEXEC.BAT C:/CONFIG.SYS
%0 = DOS/PRNTXT.BAT
%1 = AUTOEXEC.BAT
%2 = C:/CONFIG.SYS

Espero que les sea de utilidad. Cualquier duda sobre el manejo de parámetros, u otra capacidad del DOS, háganla en los Foros y se les dará ayuda.
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos21 Noviembre 2024