Hola.
Te vuelvo a citar lo que llevo citándote en tus 3 o 4 últimos comentarios:
lee sobre el redireccionamiento de comandos.
Tutorial extendido de aprendizaje Batch - By Elektro
3.3 El SilencioLa CMD siempre se encargará de mostrar todas las líneas que se van procesando de un script (resulta muy molesto), a menos que le indiques que no quieres que te informe de esos datos.
La "
voz" de la CMD se puede activar/desactivar usando el parámetro
ON y
OFF comando
Echo:
Como norma general en la primera línea de nuestros scripts siempre usaremos ese comando para desactivar "la voz", aunque en un script le tendremos que añadir el caracter
@ así:
Esa sí que será nuestra primera línea del script !!
NOTA: El caracter
@ indica que el comando que le prosigue a la derecha de él no devuelva "el echo", así que cualquier línea que empiece con el caracter
@ no devolverá "
la voz" de la CMD.
NOTA: Por defecto
Echo siempre está activado (ON)
Algunos comandos también nos dirán cosas innecesarias, para silenciar el echo (o salida) de un comando utilizaremos el operador de redirección
>, así:
PD: Más tarde aprenderemos a redireccionar y aprenderemos que es "NUL".
+
Tutorial extendido de aprendizaje Batch - By Elektro
4.6 Operadores de desplazamiento lógico (o Redireccionamiento)- 4.6 Operadores de desplazamiento lógico (o Redireccionamiento)
Redirecciona la salida de un comando, a un archivo.
Ejemplo:
Dir /B "%WINDIR%" > "Archivo.txt"
El comando DIR oculta la salida del comando y la redirecciona al archivo de texto, reemplazando el contenido del archivo.
Redirecciona la salida de un comando, a un archivo.
Ejemplo:
Dir /B "%SYSTEMDRIVE%" >> "Archivo.txt"
El comando DIR oculta la salida del comando y la redirecciona al archivo de texto, escribiendo debajo del archivo, sin reemplazar el contenido.
Redirecciona el contenido de un archivo de texto, a un comando.
Ejemplo:
Redirecciona la slaida de un comando, a otro comando.
Ejemplo:
El echo del comando
DIR pasa al comando
FIND el cual filtra esta salida mostrando solamente las lineas que contienen el string
"bytes".
Redirección ordinaria de multiples líneas:
@Echo OFF
(
Echo 1
Echo 2
Echo 3
)>"Archivo.txt"
Otros tipos de redireccionamiento ordinario:
Redirecciona cualquier error del comando al archivo.
Comando.exe 2>> "Archivo"
Redirecciona cualquier error del comando al archivo.
Redirecciona cualquier error de la CMD al archivo.
Redirecciona nula del output y cualquier error del comando (Oculta cualquier tipod e salida).
Comando.exe > "Archivo1" 2> "archivo2"
Redirecciona la salida al Archivo1 y cualquier error del comando al archivo2.
NOTA: NUL es un archivo especial de Windows que descarta toda la información que le redireccionemos, prácticamente su único uso es ocultar la salida de un comando evitando la necesidad de crear un archivo extra que nos moleste en nuestro disco duro.
TIP: También se puede redireccionar a un puerto de impresora:
Indice de redirecciones:
0 - Entrada
1 - Salida
2 - Salida de errores
3 - Flujo de archivo de entrada
4 a 9 - Indefinido
Ejemplo:
@Echo OFF
REM Redirecciona la salida normal
Echo Ejemplo 1> "Ejemplo.txt"
REM Redirecciona una entrada
CMD 0< "Ejemplo.txt"
REM Redirecciona la salida de error
Dir /B FAIL 2> "Ejemplo.txt"
Pause&Exit
Saludos.