Llama a un programa de proceso por lotes desde otro sin detener el programa
que hace la llamada. El comando call acepta etiquetas como destino de la
llamada. El comando Call no tiene efecto en la línea de comandos si no se
utiliza dentro de un archivo de comandos o de proceso por lotes.


Sintaxis


call [[unidad:][rutaDeAcceso]
nombreDeArchivo [parámetrosProgramaLotes]]
[:etiqueta [argumentos]]


Parámetros



[unidad:][rutaDeAcceso] nombreDeArchivo
Especifica la ubicación y el nombre del programa por lotes al que desea
llamar. El parámetro nombreDeArchivo debe tener la extensión .bat o .cmd.

parámetrosProgramaLotes
Especifica la información de línea de comandos requerida por el programa de
proceso por lotes, incluidas las opciones de línea de comandos, los nombres de
archivo, los parámetros de proceso por lotes (es decir, desde %0 hasta %9) o las
variables (por ejemplo, %baud%).
:etiqueta
Especifica la etiqueta a la que desea que pase el control del programa de
proceso por lotes. Al utilizar el comando call con este parámetro, se
crea un nuevo contexto de archivo de proceso por lotes y se pasa el control a la
instrucción que aparece a continuación de la etiqueta especificada. Al llegar
por primera vez al final del archivo por lotes (después de saltar a la
etiqueta), el control vuelve a la instrucción siguiente a la que incluye el
comando call. La segunda vez que se llega al final del archivo por lotes,
se abandona la secuencia de comandos de proceso por lotes. Para ver una
descripción de la extensión goto :eof que permite salir de una secuencia
de comandos de proceso por lotes, consulte los Temas relacionados.
argumentos
Especifica la información de línea de comandos que se pasa a la nueva
instancia del programa de proceso por lotes que comienza en
:etiqueta, incluidas las opciones de línea de comandos, los
nombres de archivo, los parámetros de proceso por lotes (es decir, desde
%1 hasta %9) o las variables (por ejemplo, %baud%).
/?
Muestra Ayuda en el símbolo del sistema.

Notas



  • Usar parámetros de proceso por lotes

    Los parámetros de proceso por lotes pueden contener cualquier información que
    se pueda pasar a un programa de proceso por lotes, incluidas las opciones de
    línea de comandos, los nombres de archivo, los parámetros de proceso por lotes
    (es decir, desde %0 hasta %9) o las variables (por ejemplo, %baud%). Para
    obtener más información acerca de los parámetros de proceso por lotes, consulte
    los Temas relacionados.


  • Utilizar los símbolos de canalización y redirección

    En el comando call no deben utilizarse símbolos de canalización o de
    redirección.


  • Hacer una llamada recursiva

    Puede crear un programa de proceso por lotes que se llame a sí mismo; sin
    embargo, siempre debe haber alguna condición de salida. De lo contrario, los
    programas principal y secundarios podrían entrar en un bucle sin fin.


  • Trabajar con extensiones de comando

    Si las extensiones de comando están habilitadas (valor predeterminado), el
    comando call acepta una etiqueta como destino de la llamada. La
    sintaxis correcta es la siguiente:


    call :etiqueta argumentos


    Para obtener más información acerca de cómo habilitar y deshabilitar las
    extensiones de comando, consulte cmd en los Temas
    relacionados.


Ejemplos


Para ejecutar el programa Checknew.bat desde otro programa de proceso por
lotes, incluya el siguiente comando en el programa por lotes primario:


call checknew


Si el programa primario acepta dos parámetros de proceso por lotes y usted
desea pasar esos dos parámetros al programa Checknew.bat, utilice el siguiente
comando en el programa por lotes primario:


call checknew %1 %2