Colección de citas famosas - Slogan de motivación - ¿En qué idioma está escrito el archivo bat?

¿En qué idioma está escrito el archivo bat?

Bat es un archivo por lotes en DOS.

. cmd es otro archivo por lotes para el entorno de línea de comandos del kernel nt.

Desde una perspectiva más amplia, el texto interpretado y ejecutado por el shell en scripts de shell Unix y otros sistemas operativos e incluso aplicaciones funcionan de manera muy similar a los archivos por lotes. También se comportan como interpretados e implementados por intérpretes especializados. una unidad. Esta forma de texto a menudo se denomina lenguaje de secuencias de comandos. Entonces, hasta cierto punto, Batch, Unix Shell, Awk, Basic, Perl y otros lenguajes de secuencias de comandos son todos iguales, pero el alcance de la aplicación y la plataforma de interpretación son diferentes. Incluso algunas aplicaciones todavía utilizan el término procesamiento por lotes, pero su contenido y extensiones son completamente diferentes del procesamiento por lotes de DOS.

=====================================

En primer lugar, el archivo por lotes es un archivo de texto y cada línea de este archivo es un comando de DOS (la mayoría de las veces, al igual que la línea de comando que ejecutamos en el indicador de DOS). Puede utilizar cualquier herramienta de edición de archivos de texto (como Editar en DOS o el Bloc de notas en Windows) para crear y modificar archivos por lotes.

= = = = = Nota = = = = = = = = = = = = = = = =

El comando que no es de DOS se puede usar en archivos por lotes, o incluso posible Utilice archivos de datos ordinarios sin características ejecutables. Esto se debe a la intervención de la nueva plataforma de interpretación Windows, que hace que la aplicación del procesamiento por lotes sea cada vez más "marginal". Por lo tanto, el procesamiento por lotes que analizamos debe limitarse al entorno DOS o al entorno de línea de comandos; de lo contrario, será necesario cambiar significativamente muchos conceptos y configuraciones.

========================

En segundo lugar, un archivo por lotes es un programa simple que puede controlar el proceso de operaciones de comando a través de declaraciones condicionales (if) y declaraciones de control de proceso (goto). También puede usar declaraciones de bucle (for) en el procesamiento por lotes para ejecutar un comando en un bucle. Por supuesto, las capacidades de programación de los archivos por lotes son muy limitadas y no estándar en comparación con declaraciones de programación como el lenguaje C. La declaración del programa de procesamiento por lotes es una serie de comandos de DOS (incluidos comandos internos y comandos externos). La capacidad del procesamiento por lotes depende principalmente de los comandos que utilice.

= = = = Nota = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Lenguaje compilado. En lo que respecta al lenguaje C, un archivo con la extensión C o cpp puede denominarse archivo de lenguaje C o código fuente de lenguaje C, pero solo un archivo exe compilado y conectado puede denominarse programa de lenguaje C. Debido a que el archivo por lotes en sí es legible como texto y ejecutable como programa, los límites entre estos títulos son borrosos.

============================

En tercer lugar, cada archivo por lotes es bastante Comando externo para DOS. Puede colocar su directorio en su ruta de búsqueda de DOS para que se ejecute en cualquier lugar. Un buen hábito es crear un directorio bat o por lotes en el disco duro (como C:\BATCH) y luego colocar todos los archivos por lotes que escriba en este directorio, de modo que pueda configurar c:\batch en la ruta Ejecutar. cualquier programa por lotes que escriba en cualquier lugar.

= = = =Nota= = = =

En lo que respecta a los sistemas DOS, los programas ejecutables se pueden dividir aproximadamente en cinco categorías, a saber: comando macro DOSKEY (pre-residente memoria), comandos internos de command.com (residentes en la memoria en cualquier momento según el entorno de la memoria), programas ejecutables extendidos COM (command. COM carga directamente la memoria), programas ejecutables extendidos de bits exe (command.com carga la memoria después de la reubicación) y Programa por lotes extendido Bat bit (command.com explica el análisis, llama a los programas ejecutables 2.º, 3.º, 4.º y 5.º en orden de prioridad según su contenido, analiza una línea, ejecuta una línea, pero el archivo en sí no se carga en la memoria medio).

============

Cuarto, bajo sistemas DOS y Win9x/Me, AUTOEXEC. C: El archivo por lotes BAT en el directorio raíz del disco es un archivo por lotes automático que se ejecutará automáticamente cada vez que se inicie el sistema. Puede colocar en este archivo los comandos que se ejecutarán cada vez que se inicie el sistema, como configurar la ruta de búsqueda, llamar al controlador del mouse y al caché del disco y configurar las variables de entorno del sistema. A continuación se muestra un ejemplo de autoexec.bat ejecutándose en Windows 98:

@turn off echo

Ruta C:\WINDOWS;c:\WINDOWS\COMMAND;c:\UCDOS;c :\do tools;

c:\SYSTOOLS;c:\WINTOOLS;C:\BATCH

IZQUIERDO SMARTDRV.EXE/X

IZQUIERDO DOSKEY. /INSERT

LH CTMOUSE.EXE

SET TEMP=D:\TEMP

SET TMP=D:\TEMP

= = = =Nota= = = =

AUTOEXEC. BAT es un archivo por lotes automático del sistema DOS, que COMMAND.COM interpreta y ejecuta al inicio.

En el entorno Win9x, no solo hay muchos otros archivos por lotes que se pueden ejecutar automáticamente, como DOSSTART. BATE, WINSTART. BAT, y existen muchas variantes, como por ejemplo dos.w40.bak.old.pws, se le ha agregado AUTOEXEC. BAT se adapta a entornos complejos y requisitos cambiantes.

= = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = willsort. Hay muchas cosas que vale la pena considerar en la clasificación de orden a continuación. El @ en los comandos comunes no es un comando, pero los mismos comandos de uso común, como dir y copiar, no están incluidos. Los comandos en los comandos especiales son todos comandos comunes para mí. Se recomienda dividir los comandos a los que hace referencia el procesamiento por lotes en tres categorías: comandos internos, comandos externos y programas de terceros. Sin embargo, también existen comandos internos y comandos externos que están especializados o se usan comúnmente para el procesamiento por lotes, que pueden denominarse "comandos por lotes".

El siguiente es un extracto del texto sobre "Comandos de procesamiento por lotes" en la documentación de ayuda de MS-DOS 6.22. Por supuesto, algunos conceptos y definiciones están un poco atrasados.

Comandos por lotes

Un archivo por lotes o programa por lotes es un archivo de texto que contiene varios comandos de MS-DOS con la extensión . murciélago. Cuando escribe el nombre de un programa por lotes en el símbolo del sistema, MS-DOS ejecuta los comandos del programa por lotes en grupos.

Cualquier comando disponible en el símbolo del sistema se puede utilizar en un programa por lotes. Además, los siguientes comandos de MS-DOS se utilizan específicamente en programas por lotes.

==========

Comandos públicos

Eco, @, llamada, pausa, rem (consejo: use::en lugar de rem ) es el comando más utilizado para el procesamiento de archivos por lotes, aprendamos sobre él.

= = = =Nota= = = = = = = = = =

En primer lugar, @ no es un comando, sino una marca especial para el procesamiento por lotes de DOS, que solo se usa para proteger el eco de la línea de comando. Los siguientes son algunos tokens especiales que pueden aparecer en líneas de comando de DOS o procesos por lotes:

Terminador de línea de comando CR(0D)

Escape(1B) Guía de caracteres de escape ANSI

Espacio (20) separador de parámetros de uso común

pestaña (09); = separador de parámetros anormal

Copiar conector de archivo de comando

* ?Comodín de archivo

" "Delimitador de cadena

|Carácter de canalización de comando

lt gt gt gt redirector de archivos

@ Máscara de eco de línea de comando

/Guía de cambio de parámetros

: Guía de etiquetas de lote

Guía de variables de lote

En segundo lugar, realmente puede desempeñar el papel de anotación rem, que es más conciso y efectivo; pero hay dos puntos a tener en cuenta:

Primero, excepto::, cualquier línea de caracteres que comience con: se considera una etiqueta durante el procesamiento por lotes, y lo siguiente Todo el contenido se ignora directamente, solo Para distinguirlo de las etiquetas normales, se recomienda utilizar etiquetas que goto no pueda reconocer, es decir, símbolos especiales seguidos de etiquetas no alfanuméricas.

En segundo lugar, a diferencia de rem, no importa si se usa echo on para activar el estado de eco de la línea de comando, las líneas de caracteres después de: no se repetirán durante la ejecución, porque el intérprete de comandos no cree que sea así. una línea de comando válida. Desde esta perspectiva, rem es más adecuado que:: en algunos casos, además, rem se puede utilizar en el archivo config.sys.

=====================

Echo significa mostrar los caracteres después del comando.

Eco desactivado significa que cualquier comando que se ejecute después de esta declaración no muestra la línea de comando en sí.

@ es similar a echo off, pero se agrega delante de cada línea de comando, lo que indica que la línea de comando no se mostrará cuando se ejecute (solo puede afectar la línea actual).

Call llama a otro archivo por lotes (si llama directamente a otro archivo por lotes sin llamar a call, después de ejecutar ese archivo por lotes, no podrá volver al archivo actual ni podrá ejecutar comandos posteriores del archivo actual) ).

La frase "Pausar la ejecución" pausará la ejecución del proceso por lotes, mostrará el mensaje para presionar cualquier tecla para continuar... y esperará a que el usuario presione cualquier tecla para continuar.

Rem significa que los caracteres que siguen a este comando son líneas de explicación (comentarios), que no se ejecutan y son solo para su referencia futura (equivalente a comentarios en el programa).

= = = =Nota= = = =

La descripción aquí es confusa, por lo que no es tan coherente como la ayuda de la línea de comandos que cita directamente un comando.

-

Echo

Muestra u oculta texto en un programa por lotes mientras el programa se está ejecutando. También se puede utilizar para permitir o desactivar la repetición de comandos.

Cuando se ejecuta un programa por lotes, MS-DOS generalmente muestra (repite) los comandos del programa por lotes en la pantalla.

Utilice el comando ECHO para desactivar esta función.

Sintaxis

Echo

Para mostrar comandos usando el comando echo, puede usar la siguiente sintaxis:

Echo [información]

Parámetros

On|Off

Especifique si se permite el eco del comando. Para mostrar la configuración de eco actual, puede utilizar eco sin parámetros.

Orden.

Mensaje

Especifica el texto que MS-DOS debe mostrar en la pantalla.

-

Llamar

Llama a un programa por lotes desde otro programa por lotes sin provocar que se detenga el primer programa por lotes.

Sintaxis

Llamar a [unidad:][ruta]nombre de archivo[parámetros del lote]

Parámetros

[unidad:][ruta] nombre de archivo

Especifique el nombre del programa por lotes que se llamará y su ubicación de almacenamiento. El nombre del archivo debe tener una extensión. murciélago.

Parámetros del lote

Especifique la información de la línea de comando requerida por el programa por lotes.

-

Abortar

Pausa la ejecución de un programa por lotes y muestra un mensaje que solicita al usuario que presione cualquier tecla para continuar la ejecución. Sólo en Batch Office

Utilice este comando en un programa.

Sintaxis

Abortar

Memoria de reconocimiento

Agregar comentarios al archivo por lotes o configuración. SYS También puede usar el comando REM para bloquear este comando (en CONFIG. [COUNT] Comando de copia del sistema (abreviatura de sistema)

También puede usar un punto y coma en; para reemplazar el comando REM, pero no en un archivo por lotes).

Sintaxis

REM[cadena]

Parámetros

Línea

Especifique el comando u objeto que se bloqueará Contiene comentarios.

========================

Ejemplo 1: Editar el archivo c:\a.bat e ingrese El siguiente contenido se guarda como C: \ a.bat. Después de ejecutar este archivo por lotes, puede realizar: escriba todos los archivos en el directorio raíz en a.txt, inicie UCDOS, ingrese WPS y otras funciones.

El contenido del archivo por lotes es: Comentario del comando:

@echo off no muestra las líneas de comando posteriores ni la línea de comando actual.

Directorio c:\*. * gtA.txt escribe la lista de archivos de la unidad c en a.txt.

Llame a c:\ucdos\ucdos.bat para llamar a ucdos.

Hola, Aike. Mostrar "Hola"

Pausa y espera a que la tecla continúe.

Rem prepárese para ejecutar wps Nota: prepárese para ejecutar wps

Cd ucdos en el directorio ucdos

Ejecutar Wps

Parámetros del archivo por lotes

Los archivos por lotes también pueden usar parámetros como funciones en lenguaje C (equivalente a los parámetros de línea de comando de los comandos DOS), que requieren una expresión de parámetro "".

[1-9] representa un parámetro, que se refiere a una cadena separada por espacios (o tabulaciones) que se agrega después del nombre del archivo al ejecutar el archivo por lotes. La variable puede variar de 0 a 9, 0 representa el comando por lotes en sí y otras cadenas de parámetros se representan en el orden de 1 a 9.

Ejemplo 2: C: Hay un archivo por lotes llamado f.bat en el directorio raíz, que dice:

@Desactivar eco

Formato 1

Si C:\gt;f responde:

Entonces, al ejecutar f.bat, 1 significa a:, por lo que el formato 1 es equivalente al formato a:, por lo que el comando anterior ¿Qué es? realmente ejecutado tiene el formato a:

Ejemplo 3: C: El siguiente archivo por lotes en el directorio raíz se llama t.bat y su contenido es el siguiente:

@Close echo

p>

Tipo 1

Tipo 2

Luego ejecute C:\gt;t a.txt b.tx

1: representa a.txt

2: representa b.txt

Por lo tanto, el comando anterior mostrará el contenido de los archivos a.txt y b.txt en secuencia.

= = = = = Nota = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Se utiliza como guía, seguido de un número del 0 al 9 al forman la referencia del parámetro.

La relación entre referencias y parámetros (como 1 y a: arriba) es similar a la relación entre punteros de variables y valores de variables. Cuando queremos hacer referencia al undécimo o más parámetros, se debe mover el puntero de inicio del parámetro de DOS. El comando shift desempeña la función de mover el puntero, moviendo el puntero inicial del parámetro al siguiente parámetro, similar a la operación del puntero en lenguaje C. El diagrama es el siguiente:

En el estado inicial, cmd es el. nombre del comando y se puede utilizar 0 citas

cmd arg 1 arg 2 arg 3 arg 4 arg 5 arg 6 arg 7 arg 8 arg 9 arg 10

^ ^ ^ ^ ^. ^ ^ ^ ^

| | | | |

0 1 2 3 4 5 6 7 9

1 . p>

cmd arg 1 arg 2 arg 3 arg 4 arg 5 arg 6 arg 7 arg 8 arg 9 arg 10

^ ^ ^ ^ ^ ^ ^ ^ ^ ^

|

cmd arg 1 arg 2 arg 3 arg 4 arg 5 arg 6 arg 7 arg 8 arg 9 arg 10

^ ^ ^ ^ ^ ^ ^

p>

| En el entorno de línea de comando del kernel nt, shift admite el parámetro /n y el puntero inicial se puede mover hacia atrás según el primer parámetro. ==============

Comandos especiales

Si la opción goto for es un comando relativamente avanzado en archivos por lotes. Si usa estos comandos con habilidad, eres un experto en archivos por lotes.

Primero, if es una declaración condicional, que se utiliza para determinar si se cumplen las condiciones especificadas, decidiendo así ejecutar diferentes comandos. Hay tres formatos:

<. p>1, si [no] "parámetro" == "cadena" Comando a ejecutar

Si el parámetro es igual a la cadena especificada (no significa que no sea igual, lo mismo a continuación), entonces la condición se establece y se ejecuta el comando; de lo contrario, se ejecuta la siguiente oración.

Ejemplo: if "1" == "a" formato a:

====

Esto se describe en la ayuda de la línea de comando de la siguiente manera:

IF [NOT] cadena1==cadena2 comando

Los siguientes son algunos puntos a tener en cuenta:

1. Las comillas dobles que rodean la cadena no son requeridas por la sintaxis, pero son solo un hábito. Los caracteres "antiaéreos" utilizados.

2.string1 no es necesariamente un parámetro, también puede ser una constante de cadena o una variable como una variable de entorno o una variable de bucle.

3. Los comandos no son necesarios para la sintaxis. cadena2 seguida de un espacio constituye una línea de comando válida.

==============================

2. existe] Hay un comando que se ejecutará en [ruta\] nombre de archivo.

Si hay un archivo específico y la condición es verdadera, ejecute el comando; de lo contrario, ejecute la siguiente oración.

Por ejemplo, si existe c:\config.sys, escriba c:\config.sys.

Indica que si el archivo c:\config.sys existe, muestra su contenido.

* * * * *Nota* * * * * * * *

También puedes usar el siguiente uso:

Si el comando existe

Dispositivo se refiere al dispositivo cargado por el sistema win98 DOS, que generalmente incluye:

Ox, PRN, Kang, NUL

COM1, COM2, COM3, COM4

LPT1, LPT2, LPT3, LPT4

XMSXXXX0, EMMXXXX0

A:B:C:...,

Reloj $, Configuración $, Búfer de base de datos $, IFS USD HLP USD

El contenido específico variará ligeramente debido a los diferentes entornos de software y hardware. Al utilizar estos nombres de dispositivos, debe asegurarse de los siguientes tres puntos:

1. El dispositivo realmente existe (excepto para dispositivos virtualizados por software).

2. El controlador del dispositivo se ha cargado (de forma predeterminada, el sistema define los dispositivos estándar como AUX aux y prn).

3. El dispositivo está listo (se refiere principalmente a A: B:..., COM 1..., LPT 1..., etc.

Puedes). pase el comando mem /d | busque "dispositivo" /i/i Ver los dispositivos cargados en el sistema.

Además, en el sistema DOS, el dispositivo también se considera un archivo especial y el archivo también se puede denominar dispositivo de caracteres. Debido a que los dispositivos y archivos se administran mediante identificadores, el identificador es el nombre, similar al nombre del archivo, excepto que el identificador no se usa para la administración del disco, sino para la administración de la memoria. La llamada carga de dispositivos se refiere a asignarles identificadores referenciables en la memoria.

===================================

3. Si el nivel de error es ltNumber>Comando a ejecutar

Muchos programas de DOS devolverán un valor numérico para representar el resultado (o estado) del programa después de ejecutarlo. Puede utilizar el comando if errorlevel para determinar el valor de retorno del programa y ejecutar diferentes comandos en función de diferentes valores de retorno (los valores de retorno deben organizarse en orden descendente). Si el valor de retorno es igual al número especificado, la condición es verdadera y se ejecuta el comando; de lo contrario, se ejecuta la siguiente oración.

Por ejemplo si el nivel de error 2 pasa a x2.

= = = =Nota= = = = = = = = = = =

El orden de los valores de retorno de mayor a menor no es necesario, pero es solo una El uso común al ejecutar comandos es goto. Cuando set se utiliza como comando de ejecución, generalmente se organiza de pequeño a grande. Por ejemplo, para colocar el código de retorno en una variable de entorno, usaría el siguiente orden:

Si el nivel de error es 1, establezca el=1

Si el nivel de error es 2, establezca el= 2

Si el nivel de error es 3, establezca el=3

Si el nivel de error es 4, establezca el=4

Si el nivel de error es 5, establezca el =5

...

Por supuesto, también se puede reemplazar con el siguiente bucle, el principio es el mismo:

Para e en (1 2 3 4 5 6 7 8...)do if errorlevel e set el=e

Para un uso más efectivo y conciso, consulte otro artículo que escribí sobre cómo obtener el nivel de error.

La razón de este fenómeno es que si el nivel de error compara el código de retorno, la condición de juicio no es igual, sino mayor o igual. Debido a las características de salto de goto, ordenar de pequeño a grande provocará saltos en códigos de retorno más pequeños. Sin embargo, debido a la naturaleza de asignación "repetida" del comando set, ordenar de grande a pequeño hará que los códigos de retorno más pequeños "sobrescriban" los códigos de retorno más grandes.

Además, aunque si nivel de error = Comando también es una línea de comando válida, es solo que command.com ignora = como separador de línea de comando al interpretar la línea de comando.

============================

En segundo lugar, el archivo por lotes para ir a ir está aquí Cuando se ejecuta, saltará a la etiqueta especificada por goto (etiqueta, definida como: seguida de una cadena estándar). La declaración goto generalmente se usa junto con if para ejecutar diferentes grupos de comandos según diferentes condiciones.

Por ejemplo:

Ir al final

: fin

Eco Este es el final

La etiqueta consta de una definición ": cadena", la línea donde se encuentra la etiqueta no se ejecuta.

==== willsort Nota del editor

La etiqueta a menudo se traduce como "etiqueta", pero no es ampliamente reconocida.

La combinación de goto y: puede realizar el salto en medio de la ejecución, y la combinación de if puede realizar la rama condicional del proceso de ejecución. Múltiples if pueden implementar agrupaciones de comandos, similar a la estructura de cambio de caso en C o la estructura de selección de caso en Básico. La agrupación estructurada de comandos a gran escala permite esta funcionalidad en un lenguaje de alto nivel. La siguiente es una comparación de la estructura de sintaxis del procesamiento por lotes y C/Basic:

Batch C/Basic

goto amp: goto amp:

goto amp : amp if if { } ampelse { }/if amp; elsef ampendif

ir a amp: amp if... cambiar caso de amplificador/seleccionar caso

ir a amp: amp if configuración de amplificador amp envar...función()/función(), sub()

=========================== = =========

3. Choice usa este comando para permitir al usuario ingresar un carácter (para selección), devolviendo así diferentes niveles de error según la elección del usuario, y luego coopera con if. nivel de error según la elección del usuario. Elija ejecutar diferentes comandos.

Nota: El comando de elección es un comando externo proporcionado por los sistemas DOS o Windows. La sintaxis del comando de elección en diferentes versiones será ligeramente diferente. Utilice la opción/? Consultar uso.

Sintaxis del comando de elección (esta sintaxis es la sintaxis del comando de elección en Windows 2003, la sintaxis del comando de otras versiones de elección es similar):

ELECCIÓN [/C opciones] [/ N ] [/CS] [/TTimeout/DSelect] [/M text]

Descripción:

Esta herramienta permite al usuario seleccionar un elemento de una lista de selección y devuelve el elemento seleccionado. El índice del proyecto.

Lista de parámetros:

/C options especifica la lista de opciones a crear. La lista predeterminada es "YN".

/NOcultar la lista de opciones en el mensaje. El mensaje muestra el mensaje anterior:

La opción aún está habilitada.

/CS permite la selección de opciones que distinguen entre mayúsculas y minúsculas. De forma predeterminada, la herramienta

no distingue entre mayúsculas y minúsculas.

/T tiempo de espera El número de segundos que se deben pausar antes de realizar la selección predeterminada. Los valores aceptables comienzan desde 0.

Al 9999. Si se especifica 0, no hay pausa, que es la opción predeterminada.

Se te dará a elegir.

/D opción especifica la opción predeterminada después de nnnn segundos. Los caracteres deben seleccionarse con /c.

En un conjunto de opciones especificadas por el proyecto al mismo tiempo, nnnn debe especificarse con /t.

/M texto especifica el mensaje que se muestra antes del mensaje. Si no se especifica, solo la herramienta

muestra el mensaje.

/?Mostrar mensaje de ayuda.

Nota:

La variable de entorno ERRORLEVEL se establece en el índice clave seleccionado del conjunto de selección. Primera opción en la lista.

La selección devuelve 1, la segunda selección devuelve 2, y así sucesivamente. La herramienta emitirá una advertencia si la tecla presionada por el usuario no es una selección válida.

Si la herramienta detecta una condición de error, devolverá 255.

Valor del nivel de error. Si el usuario presiona Ctrl Break o Ctrl C, la herramienta devolverá 0. El valor ERRORLEVEL de

. Cuando utilice el parámetro ERRORLEVEL en un programa por lotes, reduzca el parámetro a

Ordenado

Ejemplo:

CHOICE /?

CHOICE /C YNC /M "Presiona Y para confirmar, presiona N para no confirmar, presiona C para cancelar."

CHOICE /T 10 /C ync /CS /D y

CHOICE /C ab /M"Elija A para la opción 1 y B para la opción 2."

CHOICE /C ab /N /M"Elija A para la opción 1 y B para la opción 2." 2Elija B. ”

= = = = ordenará Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = >

He enumerado las opciones de ayuda en win98 y han sido distinguidos.

Espera a que el usuario seleccione una de un conjunto de opciones.

Espere a que el usuario seleccione uno de un conjunto de caracteres candidatos.

ELECCIÓN[/C[:]opciones] [/N] [/S] [/T[:]c,nn] [texto]

/C[:]opciones Especifique las claves permitidas. El valor predeterminado es YN

Especifica las claves permitidas (caracteres a seleccionar), el valor predeterminado es YN.

/N¿No se muestran opciones y? al final de la cadena del mensaje.

No mostrar signos de interrogación ni caracteres a seleccionar en la cadena de solicitud.

/S trata las claves seleccionadas distinguiendo entre mayúsculas y minúsculas.

Distinga entre mayúsculas y minúsculas al manejar los caracteres que desea seleccionar.

/T[:]c, nn Después de nn segundos, la selección predeterminada es c.

Después de nn segundos, la selección predeterminada es c.

La cadena de mensaje de texto que se mostrará

La cadena de mensaje que se mostrará.

ERRORLEVEL se establece en el desplazamiento de la pulsación de tecla del usuario en las opciones.

ERRORLEVEL se establece en el valor de desplazamiento de los caracteres que el usuario escribe en los caracteres que se seleccionarán.

Si ejecuto este comando: CHOICE /C YNC /M "Presione Y para confirmar, N para no confirmar, C para cancelar".

La pantalla mostrará:

Presione y para confirmar, n para confirmar yc para cancelar.

[S, N, C]?

Ejemplo: el contenido de test.bat es el siguiente (tenga en cuenta que si se usa errorlevel para juzgar el valor de retorno, debe ordenarse de mayor a menor):

@Close echo

elección /C dme /M "defrag, mem, end "

Si el nivel de error es 3, vaya al final

Si el nivel de error es 2, vaya a memoria

Si el nivel de error es 1, vaya a desfragmentar

: defrag

c:\dos\defrag

Ir al final< /p >

: Memoria

Memoria

Ir al final

: Fin

Echo Adiós

"defrag,mem,end[D,M,E]" se mostrará después de que se ejecute este lote. , el usuario puede elegir d m e, y luego la declaración if emite un juicio basado en la elección del usuario. d representa la ejecución del segmento de programa denominado defrag, M representa la ejecución del segmento de programa denominado mem y E representa la ejecución del segmento de programa denominado end. Al final de cada segmento del programa, use ir al final para saltar a la etiqueta final, luego el programa mostrará adiós y finalizará la operación de procesamiento por lotes.

En cuarto lugar, el comando de bucle for ejecutará el mismo comando varias veces siempre que se cumplan las condiciones.

Sintaxis:

Ejecutar un comando específico en cada archivo de un conjunto de archivos.

FOR variable IN (set) DO comando [comando-parámetro]

La variable especifica una sola letra para reemplazar el parámetro.

(set)Especifica un archivo o un grupo de archivos. Se pueden utilizar caracteres comodín.

Comando especifica el comando que se ejecutará para cada archivo.

Parámetros de comando

Especifique parámetros o modificadores de línea de comando para un comando específico.

Por ejemplo, hay una línea en el archivo por lotes:

(* en c.bat*.txt) escriba c

La línea de comando muestra el directorio actual El contenido de todos los archivos con extensión bat y txt.

= = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Cabe señalar que cuando la cadena en () no es un nombre de archivo único o múltiple, simplemente se reemplazará con una cadena. Esta característica, junto con la característica de que se pueden incrustar varias cadenas en (), obviamente puede considerarse como un bucle transversal.

Por supuesto, en el entorno de línea de comandos de la serie nt/2000/xp/2003, for tiene más funciones, lo que le permite analizar la salida de comandos o cadenas en archivos, y muchos modificadores también se utilizan para ampliar las capacidades de reemplazo de archivos.

============================================ = =============================

Ejemplo de procesamiento por lotes

1. existe

1) Primero use el Bloc de notas para crear un archivo por lotes test1.bat en C:\. El contenido del archivo es el siguiente:

@Close echo

Si \AUTOEXEC existe. Tipo de BAT\AUTOEXEC. Basic Armor Training (Entrenamiento básico de armadura)ˌBachelor of Arts in Teaching (Licenciatura en Enseñanza)ˌB.A.T.Industries PLC (la empresa de cigarrillos más grande del mundo en el Reino Unido)

Si \AUTOEXEC no existe. bat-echo\AUTOEXEC.

bat no existe

Luego ejecútelo:

c:\test1. Basic Armor Training (Entrenamiento básico de armadura)ˌLicenciatura en Enseñanza (Licenciatura en Enseñanza)ˌB.A.T. Industries PLC (la empresa tabacalera más grande del mundo en el Reino Unido)

Si AUTOEXEC. El archivo BAT existe en C:\ y se mostrará su contenido. Si no existe, el lote le indicará que el archivo no existe.

2) Luego cree un archivo test2.bat con el siguiente contenido:

@turn off echo

Si \1 existe, escriba \1

Si no está presente, el eco no existe

Ejecutar:

c:\gt;TEST2 AUTOEXEC. Basic Armor Training (Entrenamiento básico de armadura)ˌLicenciatura en Enseñanza (Licenciatura en Enseñanza)ˌB.A.T. Industries PLC (la empresa tabacalera más grande del mundo en el Reino Unido)

Los resultados de este comando son los mismos como arriba.

Descripción:

(1) iExist se utiliza para probar si el archivo existe, el formato es

Si existe el comando [nombre del archivo de ruta]

(2) 1 en el archivo test2.bat es un parámetro. DOS permite pasar 9 información de parámetros por lotes al archivo por lotes, es decir, 1 ~ 9 (0 representa el comando de prueba 2 en sí), que es un poco como los parámetros y formatos reales en la programación. La relación entre parámetros, 1 es el parámetro formal, AUTOEXEC. BAT es un parámetro real.

= = = = willsort Nota del editor = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

DOS no tiene un límite de "permitir la transmisión de 9 información de parámetros por lotes. El número de parámetros solo estará limitado por la longitud de la línea de comando y el". capacidad de procesamiento del comando llamado. Pero en el programa por lotes, solo podemos hacer referencia a 10 parámetros al mismo tiempo, porque DOS solo proporciona diez referencias de parámetros del 0 al 9.

============================================ = =============================

3) Además, cree un archivo llamado TEST3. BAT, el contenido es el siguiente:

@ Close Echo

Si "1" == "A" hace eco de Xiao

Si "2" == " B" hace eco del campo

if "3" == "C" echo XIN

si se ejecuta:

c:\gt; prueba 3 A B C

La pantalla mostrará:

Xiao (apellido)

Tian

Xin

Si está ejecutando:

c:\gt;Prueba 3 A B

Se mostrará en la pantalla

Xiao (apellido)

Tian

En Durante la ejecución de este comando, DOS asignará una cadena vacía al parámetro 3.

2. Nivel de error

Crear TEST4. BAT tiene el siguiente contenido:

@ Close Echo

XCOPY C:\AUTOEXEC. Bat D:\

IF ERRORLEVEL 1 Error al copiar el archivo ECHO.

Si el nivel de error es 0, el eco indica que el archivo se copió correctamente.

Luego ejecute el archivo:

c:\gt;Test 4

Si el archivo se copia correctamente, la pantalla mostrará "Copiar archivo correctamente", de lo contrario, mostrará "Error al copiar el archivo".

IF ERRORLEVEL se utiliza para probar el valor de retorno de su último comando de DOS. Tenga en cuenta que es solo el valor de retorno del último comando y el valor de retorno debe juzgarse en orden descendente.

Por lo tanto, el siguiente archivo por lotes es incorrecto:

@turn off echo

XCOPY C:\AUTOEXEC. Bat D:\

Si el nivel de error es 0, el eco indica que el archivo se copió correctamente.

Si ERRORLEVEL 1 ECHO no encuentra el archivo de copia.

Si se repite el nivel de error 2, el usuario detiene la operación de copia mediante Ctrl-C.

Si se repite el nivel de error 3, el error predeterminado impide la operación de copia del archivo.

IF ERRORLEVEL 4 ECHO Se produjo un error al escribir en el disco durante la replicación.

Independientemente de si la copia se realizó correctamente o no, ocurre lo siguiente:

No se puede encontrar el archivo copiado.

El usuario detiene la operación de copia mediante Ctrl-C.

Un error predeterminado impide la operación de copia del archivo.

Se mostrará un error al escribir en el disco durante la copia

.

Los siguientes son los valores de retorno de varios comandos comunes y sus significados:

Compatible

0 Copia de seguridad exitosa.

1No se puede encontrar el archivo de copia de seguridad.

2 archivos * * * conflictos que impiden que se complete la copia de seguridad.

3 usuarios usan Ctrl-c para cancelar la copia de seguridad.

La operación de copia de seguridad se canceló debido a un error fatal.

Componentes del disco

0 discos son iguales.

El disco 1 es diferente.

2 El usuario detiene la operación de comparación mediante CTRL-C.

La operación de comparación se detuvo debido a un error fatal.

4 El error predeterminado cancela la comparación

Copia de disco

0 La operación de copia de disco se realizó correctamente.

1 Error de lectura/escritura de disco no fatal

2 El usuario finaliza la operación de copia mediante CTRL-C.

La copia del disco se detuvo debido a un error fatal de procesamiento.

4 El error preestablecido impide la operación de copia

Formato

0 Formateo exitoso.

3 usuarios