Red de conocimiento informático - Conocimiento informático - Cómo ejecutar comandos por lotes

Cómo ejecutar comandos por lotes

Hasta donde yo sé, un lote es esencialmente una colección de comandos de DOS dispuestos en un orden determinado.

Bien, sin más, vayamos al grano. El procesamiento por lotes también se denomina script por lotes, que se traduce como BATCH en inglés. El sufijo del archivo por lotes son las tres primeras letras de BAT. Su composición no tiene un formato fijo, siempre que se sigan los siguientes puntos: cada línea puede considerarse como un comando y cada comando puede contener varios subcomandos, que se ejecutan desde la primera línea hasta el final de la última línea. Se ejecuta en la plataforma DOS superior. El procesamiento por lotes tiene características muy distintivas: fácil de usar, flexible, potente y altamente automatizado. No quiero que el tutorial sea aburrido, porque los problemas relacionados con el código (el procesamiento por lotes también se puede considerar código) son inherentemente aburridos y pocas personas pueden calmarse cuando se enfrentan a una pantalla llena de código. Por lo tanto, usaré muchos ejemplos simples y prácticos para que mis amigos experimenten el encanto del procesamiento por lotes de cuatro bambúes al leer este tutorial, sientan su carácter peculiar y se enamoren del procesamiento por lotes sin saberlo (Halo, ¿por qué? ¿Es amor?) Después de todo, ¿cuál es la relación entre el procesamiento por lotes y el amor? La respuesta es: ¡nada! ). La respuesta es: ¡no! Hablemos de "chismes": si quieres aprender bien el procesamiento por lotes, ¡debes tener una base sólida en DOS! Por supuesto, la flexibilidad cerebral también es un aspecto importante.

Ejemplo 1: primero le brindamos el script por lotes más simple para que se familiarice con él, guarde las siguientes líneas de comandos como nombre.bat y luego ejecútelas (solo se proporcionará el código en el texto). guardar Similar al método de ejecución):

ping sz.tencent.com >a.txt

ping sz1.com >> a.txt

ping sz2 .tencent .com >> a.txt

ping sz3.tencent.com >> a.txt

ping sz4.tencent.com >> a.txt

ping sz5.tencent.com >> a.txt

ping sz6.tencent.com >> a.txt

ping sz7.tencent.com >> a.txt < /p

salir

¿No tiene sentido? Pero su función es muy práctica. Después de ejecutar este proceso por lotes, puede crear un archivo llamado a.txt en el disco actual. La información registrada en él puede ayudarlo a encontrar rápidamente el servidor QQ más rápido y mantenerse alejado del "servidor esclavo". La "transferencia" es un proceso doloroso. Aquí > significa colocar el resultado obtenido por la línea de comando anterior en el lugar indicado más adelante. La función de >> es la misma que >. La diferencia es que el resultado se agrega a la siguiente línea del resultado de la línea anterior. Específicamente, es la siguiente línea de comando. El resultado de la línea anterior se conservará en la siguiente línea, de modo que el archivo a.txt pueda hacerse cada vez más grande. Los archivos txt son cada vez más grandes (imagínense los estragos que causan). Por cierto, este proceso por lotes también se puede combinar con otros comandos para convertirse en una herramienta completamente automática para determinar la velocidad del servidor. Después de la implementación, mostrará directamente la IP del servidor más rápido. Hablaremos más sobre eso más adelante.

Ejemplo 2: Un ejemplo desactualizado (a.bat):

@echo off

si existe C:\Progra~1\Tencent\AD\ * .gif del C:\Progra~1\Tencent\AD\*.gif

a.bat

¿Por qué este es un ejemplo desactualizado? En pocas palabras, porque ya casi nadie usa QQ con anuncios (¡¡KAO, mi QQ todavía muestra tríos de amigos!!!), por lo que es casi inútil. Sin embargo, nunca se debe subestimar su función: borrar los anuncios QQ y limpiar el cuadro de diálogo. La dirección utilizada aquí es la dirección de instalación predeterminada de QQ. El nombre del archivo por lotes predeterminado es a.bat. Por supuesto, puede modificarlo según la situación real.

En este script, se utiliza el comando if, que le permite lograr el efecto de juicio oportuno y eliminación de imágenes publicitarias. Solo necesita no cerrar la ventana de DOS después de ejecutar el comando, ni presionar CTRL+C para finalizar el comando por la fuerza. y continuará monitoreando si hay imágenes publicitarias (QQ también verifica si se han eliminado anuncios). Por supuesto, este script ocupará un poco de tu memoria, jaja.

Ejemplo tres, usando un script por lotes para comprobar si estás en un glaciar. El script es el siguiente:

@echo off

netstat -a -n > a.txt

escriba a.txt | busque "7626" && echo "¡Felicitaciones! "

del a.txt

pausar y salir

El comando netstat se usa aquí para verificar el estado de todos los puertos de red, por lo que siempre y cuando Como conoce los puertos utilizados por los troyanos comunes, puede determinar fácilmente si Glacier los ha sembrado. Sin embargo, esto no es seguro, ya que el puerto predeterminado de Glacier es 7626, que es completamente configurable. Los métodos e ideas presentados aquí son sólo una parte. Los métodos e ideas presentados aquí se pueden modificar ligeramente para convertirlos en un script para verificar otros troyanos. Si lo modifica ligeramente y agrega archivos de lista de información de puertos y parámetros, puede convertirse en un script para detectar automáticamente todos los troyanos. Jaja, ¿no es muy divertido? El script también utiliza el comando de combinación & & y el comando de canalización |, más sobre esto más adelante.

Ejemplo 4: utilizar el procesamiento por lotes para eliminar automáticamente la basura del sistema. El script es el siguiente:

@echo off

if exist c:\windows\temp. \*.* del c:\windows\temp\*.*

si existe c:\windows\Tempor~1\*.* del c:\windows\temp\*.* del c: \windows\Tempor ~1\*.

si existe c:\windows\History\*.* del c:\windows\Tempor~1\*.* del c:\windows\History\* .

si existe c:\windows\recent\*.* del c:\windows\History\*.* del c:\windows\recent\*.

Guarde el contenido del script anterior a autoexec.bat, de modo que el sistema eliminará automáticamente la basura del sistema cada vez que se inicie. Es necesario tener en cuenta dos puntos aquí: primero, DOS no admite nombres de archivos largos, por lo que existe Tempor~1; segundo, puede modificarlo de acuerdo con su situación real para que cumpla con sus requisitos;

¿Qué te parece? Después de ver esto, ¿ya estás un poco interesado en los scripts por lotes? ¿Has descubierto que poco a poco te has enamorado de esta cosa? No seas demasiado feliz demasiado pronto, el amor no es algo simple, puede traerte alegría y felicidad, por supuesto, también puede hacerte sentir tan doloroso que quieras saltar del edificio. Si sabes que esto es difícil pero aún así te atreves a continuar, ¡te conquistaré! Sigue trabajando duro, tal vez al final no consigas el amor verdadero (es realmente posible, todos los que han amado lo saben), pero podrás experimentar todo el proceso del amor, eso es todo. Agrio, amargo, picante, dulce o no, Dios lo sabe.

¿Por qué debemos conectar la crítica y el amor? No es que esté aburrido o que sea divertido escribir así. Hay dos razones: primero, el procesamiento por lotes y el amor tienen muchas similitudes, y hay algunos lugares que no puedo explicar claramente usando la jerga "profesional" (. No dudo de mi capacidad para expresarme), pero la cosa en sí es difícil de explicar claramente), dicho = no dicho, pero use la analogía de los amantes que se casan en el mundo (¿qué es el amor? ¿Cómo lo sé!) No sé si puedes explicarlo claramente, pero creo que definitivamente puedes obtener el doble de resultado con la mitad de esfuerzo, ¿por qué no? En segundo lugar, no tengo buena salud durante este período, tengo resfriados, fiebre, dolores de cabeza y congestión nasal, pero principalmente soy emocional y mentalmente destructivo y molesto. Me gustaría decir algunas palabras de emoción mientras escribo este tutorial. Puedes comprar un trozo de yeso de piel de perro. Omítelo y no lo leas (tal vez tenga algún impacto ----, para que no te quedes dormido después de leerlo una y otra vez, o me pidas que te reembolse. usted para gastos médicos si se topa con él). Quizás en los próximos tutoriales también veas héroes como Yang Guo y Zhang Wuji escritos por el Sr. Jin.

Los amigos que hayan leído el primer capítulo deben tener una impresión preliminar del procesamiento por lotes y saber cuál es su utilidad. ¿Pero conoce la esencia del uso del procesamiento por lotes? En realidad, es muy simple, ¡sólo sé flexible en tu forma de pensar! Nada es imposible, sólo inimaginable. Esto es un poco diferente del amor, porque el mundo del amor es un mundo de dos personas. Las ilusiones no se llaman amor (adicional: eso se llama amor no correspondido. ¡Tonterías!) Pero el procesamiento por lotes es un paraíso para una persona, donde tú. ¡Puedes hacer lo que quieras y no hay nada que no puedas lograr!

El procesamiento por lotes puede parecer complicado, pero su lógica es muy sólida y definitivamente no es inferior a otros lenguajes de programación (como el ensamblador). Si el script que escribe es un montón de código confuso, aunque cada línea de comando es correcta Sí, pero después de ejecutarla de principio a fin, es posible que no obtenga el resultado que desea. Puede ser una pantalla de Comando incorrecto o nombre fallido. Esto, a su vez, es lo mismo que Ai Youdao ****: el negocio avanza en pasos, y omitir o agregar pasos puede generar resultados que no desea ver. Creo que no hay amigo enamorado que no esté de acuerdo con esta frase. Cuando utilizo el procesamiento por lotes de my love, el resultado no es un comando incorrecto ni un nombre de error. La pantalla dice: "Tu amor" no es un comando interno o externo, un programa ejecutable o un archivo por lotes. Luego, el cursor sigue parpadeando. Espere. para la siguiente entrada de error

A partir de este capítulo, presentaremos los comandos comúnmente utilizados en el procesamiento por lotes de principio a fin. Muchos comandos comunes de DOS se usan tan ampliamente en scripts por lotes que son la base. scripts por lotes, pero el procesamiento por lotes es más flexible y más automatizado que DOS. Para aprender el procesamiento por lotes, debe tener una base sólida en DOS. Aquí solo presentamos algunos comandos de DOS menos utilizados (relativamente hablando), como COPY. , DIR, etc. (estos comandos aparentemente simples son en realidad muy complicados, ¡me temo que no puedo explicarlos claramente!)

Ejemplo

Veamos primero el Ejemplo 5. Ejemplo: este es un script muy interesante, algo pequeño pero práctico, que utiliza plenamente las características de "automatización" del procesamiento por lotes. Primero, permítanme presentarles el origen de este script: todo el mundo lo sabe en el proceso de ensamblaje (MASM). Primero, debe compilar y conectar el código fuente y luego ejecutarlo. Hay muchos pasos en el proceso que requieren mucha información, lo cual es muy problemático (solo los amigos experimentados pueden entender cómo realizar este proceso). ¿Simple? Durante el diseño de nuestro curso de ensamblaje, me "obligaron" a escribir este script y fue muy divertido de usar, jaja.

Echa un vistazo a este script:

@echo off

::close echo

cls

::clean screen

echo Este programa permite que el programa MASM se ejecute automáticamente

::display information

::display info

::display info

::mostrar información

echo Editar por CODERED

::mostrar información

echo Envíeme un correo electrónico: qqkiller***@sina.com

::mostrar información

if " %1"=="" ir a uso

::si entrada sin parámetro ir a uso

if " %1"=="/?"

::if el parámetro es "/?" ir a uso

if "%1"=="ayuda" ir a uso

::si el parámetro es "ayuda" ir a uso

pausa

::pausa para ver el uso

mas %1.asm < / p>

::ensamblar el código .asm

si el nivel de error 1 pausa y edita %1.asm

::si el error pausa para ver el mensaje de error y edite el código

enlace %1 obj & %1

::else vincule el archivo .obj y ejecute el archivo .exe

:usage

p>

::set use

echo Uso: El nombre del archivo BAT es [nombre del archivo asm]

echo El nombre del archivo BAT predeterminado es START.BAT

::display use

No te dejes intimidar por estas cosas todavía, tómate un momento para mirarlas detenidamente (¡¡recuerda lo que decía el primer párrafo del Capítulo 1 en cada línea!!!). se ha dado en la explicación del comando, el contenido de los dos dos puntos después es la E explicada en la línea anterior (para aquellos que le temen a la E, no se preocupen, es muy simple y pueden entenderlo en un vistazo. Si realmente no lo entiendes, no puedes buscarlo en el diccionario. ¿Eres tan vago? ), no se muestra durante la ejecución del script y no tiene ningún efecto. Hay dos puntos al comienzo de la quinta línea de la cuenta regresiva, ¡no es un error administrativo! Discutiremos esto con más detalle más adelante. En este script, masm y link son el ensamblador y el enlazador, que deben colocarse en el directorio actual junto con el editor y el código fuente a editar (y el script por supuesto, ¡mierda!). Con este script por lotes, puede minimizar la posibilidad de entrada manual. Todo el proceso solo requiere presionar la tecla Intro varias veces para lograr la conversión automática de la compilación del código fuente a archivos ejecutables y tiene funciones de juicio inteligente: Si hay un error. en la compilación del código fuente (la compilación no tuvo éxito), el mensaje de error se pausará automáticamente y se ingresará automáticamente a la interfaz de edición del código fuente después de presionar cualquier tecla. Si el código fuente se compila correctamente, el archivo ejecutable generado se conectará y se ejecutará automáticamente después. el documento. Además, debido a la simplicidad y flexibilidad de los comandos de procesamiento por lotes, este script también se ha mejorado enormemente y con modificaciones simples se puede adaptar a los hábitos informáticos de diferentes amigos. Si estás aprendiendo a ensamblar, ¡no olvides practicar!

Los siguientes comandos aparecen en este script: @, echo, :::, pausa, ::, así como goto, %, y if, que cubriremos en este capítulo.