Todo sobre ms-dos , bat, cmd, etc. [megapost]

MEGAPOST DE PROGRAMACIÓN BATCH AQUÍ ESTA TODO:



Que es batch?

dijo:Es un archivo de procesamiento por lotes: se trata de archivos de texto sin formato, guardados con la extensión *.bat que contienen un conjunto de comandos DOS. Cuando se ejecuta este archivo bat, los comandos contenidos son ejecutados en grupo, de forma secuencial, permitiendo automatizar diversas tareas. Cualquier comando DOS puede ser utilizado en un archivo batch.[/quote]

Hay que aclarar Batch que no es un Lenguaje de Programación. Es un archivo de código que contiene comandos del, Shell de Windows, llamado MS-DOS, que pueden ejecutar desde Inicio->Ejecutar->CMD.

Hay dos maneras de ejecutar comandos Batch.
Desde el Shell de Windows.
Escribiéndolos en un archivo de texto con extensión .bat y luego ejecutarlo.

Hola Mundo en Batch

Comenzaremos creando un Simple y clásico "Hola Mundo", escribiendo en un archivo de texto el siguiente código.

Codigo:
dijo:@echo off
echo Hola Mundo
pause exit[/quote]


Ahora guardemos el archivo como Nombre.bat y lo ejecutamos. Nos aparecerá una pantalla negra que dirá "Hola Mundo", luego una linea abajo dirá "Presione una tecla para continuar"
Explicamos:
echo:

Imprime un texto en pantalla, que es el texto que viene después (el que le pasamos como parámetro), que en este caso es "Hola Mundo". Echo significa eco, por lo mismo "@echo off" elimina el eco, la repetición de la ruta en la que nos encontramos en cada línea código.
pause:

Como bien se lee, pausa la ejecución del código. Además muestra el texto "Presione una tecla para continuar"
exit:

Cierra la ventana de comandos.

Para dejar más en claro cual sería la diferencia de no ocupar la linea @echo off la imagen de a continuación muestra como se vería la pantalla sin esta linea.

Todo sobre ms-dos , bat, cmd, etc. [megapost]

Ahora aprenderemos algunas funciones de Batch:

CD o CHDIR:

Si has trabajado en PHP, te sera fácil entender este concepto. Sirve para cambiar de Directorio o Mostrar el nombre del actual. Para usarlo, CD o CHDIR seguido de la ubicación del directorio al cual nos moveremos.
cd "C:"
chdir "C:"
Los ejemplos anteriores hacen exactamente lo mismo, cambian al Disco C

COPY:

Sirve para copiar uno o más archivos a otro destino.
Su sintaxis es la siguiente:
Copy "Dirección del archivo" "Nueva dirección"
Ejemplo:

Código :
dijo:Copy "C:archivo.txt" "C:archivo2.txt"[/quote]

Aquí copiaríamos un archivo del Disco C llamado "archivo.txt" como "archivo2.txt"
Para acortar un poco podríamos usar:

Código :
dijo:cd "C:" Copy "archivo.txt" "archivo2.txt"[/quote]


Donde primero cambiamos de directorio al Disco C con cd "C:" y luego al copiar no tenemos que especificar que esta en el Disco C ya que ya nos encontramos en el.


DEL:


Sirve para eliminar uno o más archivos. Su sintaxis es:
Del "ARCHIVO"
También se puede añadir:
del /f /q "archivo"
Donde no pide confirmación de eliminación (/q) y fuerza al archivo a borrarse ( /f )

Move:

Sirve para mover un archivo. Su sintaxis es:
Move "Dirección Archivo" "Nueva Dirección"

Cls:

Sirve para limpiar el contenido de la pantalla:
Ejemplo:

Código :
dijo:@echo off
echo Hola, Cuando pulses la tecla se borrara el contenido y cambiara por otro.
pause
cls
echo ¿Ves?
pause
exit[/quote]

Si quisiéramos averiguar más sobre las funciones, o conocer algunas nuevas por nuestra propia cuenta podemos escribir en el Shell el nombre del comando seguido de /? y aparecerá toda la información necesaria.

Podemos poner en práctica esto de la siguiente manera:

Abramos el Shell de windows:

dijo:Inicio->Ejecutar-CMD[/quote]

Una vez abierto escribamos:

dijo:echo off[/quote]

Para eliminar el eco.
Luego para borrar el contenido de pantalla escribe:

Código :
dijo:cls[/quote]

Ahora veamos la ayuda de la función Copy:

Código :
dijo:copy /?[/quote]

Cerremos la ventana:

Código :
dijo:exit[/quote]

Ahora vamos a crear un Batch que copie un archivo, luego lo mueva a otro directorio, borre el original y vuelva a copiar el copiado.
En la carpeta donde crearás el archivo .bat crea un archivo de texto llamado copiame.txt. En él, escribe lo que quieras. Este será el archivo que copiaremos.
Ahora el Batch:

Código :
dijo:@echo off
echo Hola, Copiaremos un archivo
pause
copy "copiame.txt" "copiado.txt"
move "copiado.txt" "C:copiado.txt"
del "copiame.txt"
cd "C:" copy "copiado.txt" "copiado2.txt"
exit[/quote]

Guárdalo en la carpeta como NombreQueTuQuieras.bat, y ejecútalo.

Lo que ha hecho la cadena de instrucciones es más o menos lo siguiente:
Primero apagamos el eco, luego imprimimos en pantalla "Hola, Copiaremos un archivo"
Pausamos el intérprete para que no siga de largo.
A continuación, copiamos el archivo "Copiame.txt" y su copia se llamará "copiado.txt". La movemos a la carpeta raíz del disco C, y eliminamos el original.
Por ultimo cambiamos de directorio al disco C, copiamos la copia y cerramos el Batch.

Después de que ejecutemos el Batch, si vamos al Disco C, veremos que hay dos nuevos archivos de texto: uno llamado copiado.txt y otro copiado2.txt.
También si vamos a la carpeta del Batch, veremos no está el archivo de texto original, "copiame.txt".

Creación de nuevos archivos:

Con Batch podemos crear otros archivos. Para ello, tenemos que escribir algo como esto:

Código :
dijo:echo TEXTO DE PRIMERA LINEA > nombre.extensión
echo TEXTO SEGUNDA LINEA >> nombre.extensión
echo TEXTO SIGUIENTE LINEA >> nombre.extensión[/quote]

Al escribir echo seguido de un texto y el signo > creamos un archivo con el nombre que siga.
Si ocupamos un echo seguido de un texto y el doble signo > (>> se escribirá en la siguiente linea vacía del archivo que prosiga.

Hagamos la prueba:

Código :
dijo:echo Creando un Archivo de texto > nuevo.txt
echo Esta es la Segunda linea >> nuevo.txt
echo Y esta es la Siguiente >> nuevo.txt
echo Esto esta genial >> nuevo.txt[/quote]

Si ejecutamos eso, la pantalla negra se abrirá y cerrará.
Pero en la carpeta en la que está nuestro batch se abra creado un nuevo archivo "nuevo.txt" que si lo abrimos, dentro estará escrito lo que especificamos.

Personalizando el SHELL

Seguro que no te gusta mucho el aspecto del Shell.
Aquí veremos como personalizarlo un poco.

COLOR:

Con la función color podemos cambiar los colores de fondo y las letras. Siendo su sintaxis:
COLOR AB
Donde A= El color de el Fondo y B= Color de las letras.
Para ver todos los colores ve el MS-Dos y escribe color/?

TITLE:

Para cambiar el título de la barra de tareas solo escribe:
Title Loquequierascomotitulo

Pause Personalizado:

¿No te gusta que al poner pause salga "Presione una tecla para continuar..."?
Pues si escribes "pause>nul" no aparecerá ni un texto.
Entonces si anteponemos un mensaje, quedaría así.
Código :
dijo:echo Aprieta cualquier tecla para seguir
pause>nul[/quote]

Además puedes jugar con los caracteres. Aquí un ejemplo, donde cambié los colores y jugué con los caracteres y personalicé el pause:

Programacion

El código que empleé para esto fue:
dijo:@echo off
color 30
echo ==================================
echo = =
echo = Personalizado =
echo = =
echo ==================================
echo.
echo.
echo Esto esta personalizado, para salir presiona una tecla. pause>nul exit[/quote]

Cabe mencionar que echo. (Echo seguido de un punto)sirve para saltarse una línea.

Matando Procesos:

¿Alguna vez has presionado CTRL+ALT+DELETE?
Si lo haces se abre el Administrador de tarea. En la pestaña procesos salen algunos procesos que están andando en tu pc, haciéndoles clics y apretando "terminar proceso" lo puedes acabar.
Con batch eso es muy fácil, se usa la función:
Taskkill (No funciona en todos los pc, para ver si esta disponible escribe taskkill/?)
Su sintaxis es:
Código :
dijo:taskkill /f /im proceso.exe[/quote]

/f Fuerza el término del proceso.

Un ejemplo seria escribir.
Código :
dijo:taskkill /f /im wmplayer.exe[/quote]

Si lo ejecutas y tienes el Reproductor de Windows Media abierto, este se cerrará.

ABRIENDO PROCESOS:


Ahora abramos ese proceso que cerramos. Para abrir procesos se usa la función Start que funciona así:
Código :
dijo:start proceso.exe[/quote]

También puedes abrir paginas web con tu explorador predeterminado.
Ejemplo1:

Código :
dijo:start wmplayer.exe[/quote]

Se abrirá el Reproductor de Música

Ejemplo2:

Código :
dijo:start www.google.cl[/quote]

Para llamarla debemos escribir su nombre entre los signos %%
Ejemplo:

Código :
dijo:@echo off
set Nombre= Fabrimich
echo %Nombre%
pause[/quote]

La pantalla nos mostrara algo así:

consola

VARIABLES:


Ahora aprendamos a declarar variables. Para crear una se escribe:
Código :
dijo:set NOMBREVARIABLE = VALOR[/quote]

Para cambiar el valor solo debemos hacer esto:

Código :
dijo:set Nombre= Nuevo Valor[/quote]

Si quieres que tu Variable sea dinámica, osea que el Usuario la elija antepones /p:

Código :
dijo:set /p Nombre=Escriba su Nombre:[/quote]

Donde el Batch se pausara solo mostrando el Mensaje que va luego de "=" dejando que se escriba algo.
También podemos multiplicarlas, sumarlas, etc... con /a:

Código :
dijo:set numero1=2
ser numero2=43
set /a suma= %numero1% + %numero2%
echo %suma%
pause
exit[/quote]

Si ejecutamos este, nos devolverá la suma de 2 + 43, 45.

Creo que con esto será suficiente.
Ojalá hayan entendido y les haya interesado el batch, que principalmente se puede usar para facilitar algunas tareas de Windows, ya que como veremos en la segunda parte del tip se pueden lograr cosas bastante interesantes.

Esta es la segunda parte de mi post Programación Batch con archivos .bat, así que te recomiendo leerlo si es que no estas instruido en el tema.

A continuación veremos los siguientes temas:

Uso de etiquetas
Condicionales
Creación de Menús
Apagado y Reiniciado de Pc
Leer archivos externos
Insertar al Registro
Otras cosas útiles

Uso de etiquetas

Como bien sabemos la lectura de los códigos Batch se leen de una manera lineal, pero existe una forma para que el Batch se salte lineas, o vuelva a alguna anterior. Esto se logra con Etiquetas y la función GOTO.
Para crear una etiqueta solo debemos escribir:
Código :
dijo::nombreEtiqueta[/quote]
Dos punto ( seguido del nombre que le daremos a la etiqueta. De esta manera el GOTO funciona escribiendo

GOTO seguido del nombre de la etiqueta, como vemos en el siguiente ejemplo.
Código :
dijo:@echo off
goto :mietiqueta
echo ¿Por que me saltan?
:MiEtiqueta
echo Hola, esta es la etiqueta y nos saltamos una parte del codigo.
pause>nul
exit[/quote]

Dato Interesante:
En Batch las Mayúsculas y Minúsculas no se diferencian.

Condicionales:

El primer condicional que veremos el más usado.
IF:
Se puede ocupar para comparar, cadenas, números o para saber si existen archivos.
Ejemplo de sintaxis, if %cadena1% == %cadena2% OrdenAEjecutar
Que se podría leer de la siguiente manera. Si cadena1 es igual a Cadena2 ejecutemos la Orden OrdenAEjecutar.
También existe el NOT para ver si no son iguales.
if not %cadena1%== %cadena2% ejecutarAccion
Para saber si un archivo existe, se usa:
if exist "NombreDelArchivo" AccionAEjecutar
o también para ver si NO existe:
if not exist "NombreDelArchivo" AccionAEjecutar

No solo se puede ocupar el signo == para hacer comparaciones.
EQU, que es el equivalente a ==
NEQ, Sirve para cuando queremos ver Desigualdad.
LSS, Para verificar si el numero es Menor
LEQ, Para verificar si es menor o igual.
GTR, Si es mayor
GEQ, Si es Mayor e igual.

Un ejemplo de esto seria:
Código :
dijo:if 5 GTR 4 echo Hola[/quote]

FOR:
Nos sirve para repetir un comando varias veces, en distintas variables.
Un ejemplo, es este:
for /L %%i IN (0,1,21) DO (echo %%i)
En donde /L es para especificar que nuestro for se basara en un conteo de números.
Aquí se repetirá un Echo, que imprimirá números del 0 al 21.
%%i sera el nombre de la variable que almacenara datos
in (0,1,21) aquí especificamos que se repetirá del 0 al 1 y del 1 al 21.
do (echo %%i) Esto es la función que se ejecutara en cada repetición del comando, en este caso un echo que imprimirá la variable.
dijo:Batch en algunos casos SI reconoce entre mayúsculas y minúsculas, como en el caso de la variable %%i si esta se llamara %%I no seria reconocida como la misma.[/quote]

Otro uso que puede ser aplicado en el FOR es el listado de carpetas o archivos, como veremos a continuación:
Listado de archivos:
Código :
dijo:@echo off
FOR %%x in (a*) DO echo %%x
pause[/quote]

Este código, listaría todos los archivos que comienzan con A.
¿Por que? * (asterisco) es un signo comodín, por lo cual al poner a*, estamos diciendo cualquier archivo que tenga una A delante y luego cualquier cosa.
Otro ejemplo del uso de comodín, es listar archivos con extensión común como seria este:
Código :
dijo:@echo off
FOR %%x in (*.jpg) DO echo %%x
pause[/quote]


Aqui nos estaria listando todos los archivos que tengan la extensión .jpg

Listado de Carpetas:
FOR /D %%x in (a*) DO echo %%x
Es casi lo mismo anterior, tan solo que al indicar /D solo se aplica a directorios.
Si quisiéramos que se listaran los directorios, juntos a los directorios que tienen estos dentro se ocupa /R
FOR /R /D %%x in (a*) DO echo %%x

y si quisiéramos listar todos los documentos que están dentro de una carpeta contando los que están dentro de carpetas se ocupa solamente /R (Sin /D)
FOR /R %%x in (a*) DO echo %%x

Con esto creo que tenemos lo básico, y más importante de los condicionales. Talvez otro claber se anime a profundizar más en el tema.

Creación de Menús:

Como ya vimos Condicionales y Etiquetas les enseñare una manera de hacer Menús.
Comenzaríamos indicando las instrucciones y las opciones, de esta manera:

Código :

dijo:@echo off
:Menu
cls
echo Seleccione su opcion tecleando el numero respectivo.
echo.
echo 1. Primera Opcion
echo 2. Segunda Opcion
echo 3. Salir
[/quote]


Luego para seguir ocuparíamos esto:

Código :
dijo:set /p var=
if %var%==1 goto rimero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Menu[/quote]

Con esto damos una variable en la que se guardara el numero insertado para luego ser verificado por los condicionales, si el numero es mayor que 3 nos avisara que no existe esa opción. También al principio cree una etiqueta para que se pueda volver

al menú y un "cls" para limpiar la pantalla.
Para terminar creamos las respectivas etiquetas.
Código :
dijo:rimero
cls
color a
Echo Esta es la Primera Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
:Segundo
cls
color 1a
Echo Esta es la Segunda Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
[/quote]


Quedando para terminar nuestro codigo así:
Código :
dijo:@echo off
:Menu
cls
echo Seleccione su opcion tecleando el numero respectivo.
echo.
echo 1. Primera Opcion
echo 2. Segunda Opcion
echo 3. Salir
set /p var=
if %var%==1 goto rimero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Menu
rimero
cls
color a
Echo Esta es la Primera Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
:Segundo
cls
color 1a
Echo Esta es la Segunda Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu[/quote]

Bueno, con eso les basta para imaginarse como crear sus menús personales.
Como vieron puede cada sección tener su color, incluso puedes cambiar la barra de titulo.
Ve probando, no pierdes nada.

Apagado y Reiniciado de Pc:

Una cosa muy interesante que puedes hacer con Batch es Apagar y Reiniciar tu Pc, incluso programarlo para que apague a la hora que desees.
Es notablemente fácil.
se ocupa de la siguiente manera el apagado.
shu*** -s -t Tiempo -c "Comentario"
donde -s significa que lo apagaremos, -t debe ir seguido de los segundos que demorara apagar. En windos XP mostrara un contador, con el comentario que va luego de -c, pero en Windows Vista no abra ni un contador, solamente saldrá una alerta con el Comentario, que ni siquiera es obligatorio.
Bueno, de seguro quieres hacer la prueba. La puedes hacer pero antes de eso te recomiendo que leas lo siguiente.
Puedes cancelar el apagado (Antes de que el contador termine) solamente escribiendo shu*** -a ya sea en un archivo de texto con extensión bat, como en el mismo Shell.
Entonces, pues has la prueba
Código :
dijo:shu*** -s -t 999999 -c "Esto se esta apagando"[/quote]

Tendrás suficiente tiempo para ejecutar el siguiente código. (11 días )

Código :
dijo:shu*** -a[/quote]

Con esto ya probamos los dos y podemos ser felices.
Ok, si en vez de ocupar -s usas -r el PC se reiniciara.
También puedes forzar el cierre de los programas, para que no de tiempo de guardar nada. Tan solo ocupando -f
Un ejemplo de un Pc, que se Apaga Forzosamente y que puede dañar el pc y luego se reinicia es este:
Código :
dijo:shu*** -r -f -t 0 -c "Bye"[/quote]

(No lo recomiendo probar en tu pc, Ya que apaga el pc en 0 segundos sin preguntar nada. )
Para programar un apagado lo veremos al final en los Datos Extras, ya que con la función AT puedes programar el apagado.

Leer archivos externos:

Para leer un archivo externo con Batch, como un archivo de texto por ejemplo. Se usa el siguiente código:
Código :
dijo:type "NombreDelArchivo.txt"[/quote]


¿Simple no?

Insertar al Registro:

Insertar al registro tu Batch puede ser muy útil, la verdad yo no entiendo mucho del registro pero leí un poco y aquí tienen un ejemplo que se encuentra a ser sincero en muchas web. Donde aremos que nuestro batch se ejecute con el Sistema.

Código :
dijo:REG ADD HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun /v MIBATCH.bat /t REG_SZ /d

C:MIBATCH.bat[/quote]

Con la función REG ADD Agregamos algo al registro. Con otros comando podemos borrar.
Lo que sigue es la "Dirección" de donde insertaremos el registro que en este caso sera para que nuestro batch se ejecute al iniciar Sesión.
En medio de toda la dirección se puede leer MIBATCH.bat yo puse el nombre del Batch pero también se puede poner cualquier otra cosa. Más adelante donde dice C:MIBATCH.bat, es la dirección completa de donde esta nuestro Batch.
Con solo esta linea estamos listos. Haz la prueba!

Otras cosas útiles:

Para terminar hablare de pequeñas funciones que pueden ser de utilidad.

Msg
Esta función tiene otras utilidades, pero les enseñare esta que no funciona en todos los PC.
Sirve para abrir una alerta con un mensaje su utilización es la siguiente:
Código :
dijo:msg * EsteEsMiMensaje[/quote]

AT
Esta es una de las que más me gusta, es para programar alguna acción a cierta hora.
Ejemplo:
Código :
dijo:At 20:00 msg * Son Las 8 de la noche[/quote]

Con esto a las 20:00 nos aparecerá un mensaje que nos dirá que son las 8 de la Noche.
También puedes programar un apagado o cualquier Cosa.
Si la hora que das ya paso, se tomara como para el día siguiente.

Lista de los comandos del dos




CHKDSK - Controla un disco y provee información sobre su capacidad, su estado, los directorios, los archivos, la FAT, etc. Ha sido reemplazado por SCANDISK en los DOS 6.2.

ATTRIB - Presenta en pantalla o modifica los atributos de los archivos.

COPY - Sirve para copiar archivos, concatenarlos, cambiarles el nombre, etc.

DIR - Presenta la lista del contenido de un directorio, en su totalidad o de manera selectiva.

EDIT - Editor que reemplaza a Edlin desde el DOS.5. Se usará esencialmente para modificar pequeños archivos de texto, empezando por los llamados "archivos de sistema”, que son el CONFIG.SYS y el AUTOEXEC.BAT.

FDISK - Instala un disco duro, crea, muestra en pantalla o suprime particiones.

FORMAT - Formatea el disco destinatario marcando y eliminando los sectores defectuosos, inicializando el directorio y la tabla de asignación de los archivos (FAT), y cargando el programa de inicio.

INSTALL O INSTALAR- Carga los programas residentes, a través del Config.Sys.

MD - Crea un directorio. Otro nombre de este comando: MKDIR, por "Make Directory”, creación de un directorio.

MSCDEX - Acceso a los CD-ROM. A partir del DOS 6.

SCANDISK - Herramienta de verificación y reparación de los discos duros, pero sólo a partir de la versión 6.2.

Aca estan los demas para los que quieren saber mas del dos

ANSI.SYS - Carga el código ANSI. Interviene en el Config.Sys mediante un Device=

APPEND - Indica al sistema en qué directorios debe buscar los archivos de datos o de comandos. Este comando es relativamente reciente en el DOS y complementa al comando PATH, que sólo se ocupa de archivos de comandos.

ASSIGN - Envía el comando direccionado en un disco hacia otro disco; este último reemplaza al primero. Ya no existe en el DOS 6.

BACKUP - Realiza una copia de seguridad de los archivos de un disco en uno 0 varios discos, mostrando mientras tanto su nombre en pantalla. La restauración de los archivos se hace con la orden de sentido contrario, RESTORE. El Backup ya no existe en el DOS 6, lo cual es una bendición porque este comando era uno de los más difíciles de manejar.

BASIC - Llama al lenguaje Basic IBM en los DOS IBM. Se trata del lenguaje de programación más simple que existe.

BAT - Extensión específica para el nombre de los archivos de procedimientos, que disponen de toda una gama de comandos propios. Uno de los más conocidos es el archivo AUTOEXEC.BAT, que se ejecuta automáticamente cuando usted pone su computadora en funcionamiento.

BREAK - Activa o desactiva la posibilidad de realizar una interrupción con Con trol + Pausa, que permite salir de una secuencia.

BUFFERS - Comando para el config.sys que determina la capacidad del búfer para el disco.

CALL - En un archivo .bat, llama a otro .bat como un subprograma.

CD - Cambio de directorio; su nombre completo es CHDIR.

CHCP - Selección de las tablas de códigos.

CHDIR - Cambio de directorio, cuyo nombre abreviado es CD. Adopte CD en lu gar de CHDIR si quiere evitar presionar tres teclas en el teclado.

CHKDSK - Controla un disco y provee información sobre su capacidad, su estado, los directorios, los archivos, la FAT, etc. Ha sido reemplazado por SCANDISK en los DOS 6.2.

CHKSTATE.SYS - Una novedad del DOS 6. Usado por el programa MemMaker para optimizar la memoria.

CHOICE - Una novedad del DOS. 6. Le pide al usuario que efectúe una selección en una secuencia «batch».

CLS - Simplemente borra la pantalla, sin cambiar ninguna otra cosa. Es un coman do pequeño e interesante que conviene recordar.

COMMAND - Llama a un procesador secundario de comandos, o reinstala el procesador de comandos COMMAND.COM del DOS.

CONFIG.SYS - Archivo de configuración que dispone de instrucciones propias. Este archivo se ejecuta automáticamente cada vez que se pone en funcionamiento la computadora.

COUNTRY - Nacionaliza el sistema, adaptándolo al país.

DATE - Muestra en pantalla y modifica la fecha utilizada por el sistema; la nueva, fecha introducida se graba en las memorias permanentes.

DBLSPACE - Compacta el disco duro, duplicando aproximadamente su capacidad. La compresión puede variar normalmente de 1,7 a más de 10, según el tipo de archivo. Este comando ha sido reemplazado por DRIVESPACE a partir del DOS 6.22.

DBLSPACE.SYS - Una novedad del DOS 6. Determina la posición final del archivo dblspace.bin.

DEBUG - Lanza el programa de "debugging' (eliminación de errores). Debug está reservado a los expertos.

DEFRAG - Una novedad del DOS 6. Desfragmenta los archivos en el disco duro para mejorar la velocidad y la seguridad.

DEL - Destruye uno o varios archivos en el disco (actúa como el comando ERASE).

DELOLDOS - Suprime la puesta en reserva de un DOS antiguo.

DELTREE - Una novedad dei DOS 6. Suprime un directorio y todo lo que contiene, incluyendo los subdirectorios, en una sola operación.

DEVICE - Instala un driver de periférico, por medio del config.sys.

DEVICEHIGH - Carga un administrador en memoria superior, por encima de los primeros 640 KB.

DISKCOMP - Compara el contenido total, pista por pista y sector por sector, de dos disquetes del mismo tipo.

DISKCOPY - Copia de modo idéntico el contenido de un disquete fuente en un disquete destinatario rigurosamente del mismo formato, formateando previamente este último y haciéndolo sobre el modelo del disquete fuente si es necesario.

DISPLAY.SYS - Se utiliza para conmutar las tablas de códigos, vía el config.sys.

DOS - Establece un vínculo entre la memoria convencional y la memoria superior a través del config.sys.

DOSKEY - Instala el programa de memorización y de llamado de los comandos instalados anteriormente. De esta manera, se evita tener que volver a escribirlos.

DOSSHELL - Llama a la superestructura de diálogo del DOS. Este dos shell ha sido

suprimido en la versión DOS 6.2 ya que Microsoft consideró que había sido reemplazado ventajosamente por el “Administrador de archivos” de ese superprograma que es Windows.

DRIVER.SYS - Administra las disqueteras, a través del Config.Sys.

DRIVPARM - Define los parámetros de periféricos en modo bloque, a través del Config.Sys.

DRIVESPACE - Reemplaza a DBLSPACE a partir del DOS 6.22, con las mismas fun ciones.

ECHO - Vuelve a mostrar en pantalla o no, en eco, los comandos ejecutados en un archivo .BAT, según se ponga o no en servicio este eco, usando ON u OFF respec tivamente. Permite introducir un mensaje que será mostrado en pantalla en todos los casos.

EMM386 - Sirve de soporte a la memoria expandida.

EMM386.EXE - Simula la memoria expandida en la memoria extendida, a través del Config.sys.

ERASE - Destruye uno o varios archivos del disco (y actúa como el comando DEL). Opte por DEL ya que se escribe más rápido.

ERROLEVEL - Código de errores para archivos .BAT Otra noción más para expertos.

EXE2BIN - Convierte el formato .EXE en .BIN o .COM. Este comando, que no exis te más en los DOS 6, está destinado a los programadores.

EXIT - Sale de un procesador de comandos. En la mayoría de los casos, EXIT le permite salir del DOS para volver al programa que lo llama, Windows por ejemplo.

EXPAND - Descomprime un archivo comprimido. A partir del DOS versión 5.

FASTHELP - Muestra en pantalla la lista de comandos de la versión 6 con una breve explicación.

FASTOPEN - Proporciona un acceso rápido a los archivos que se usan con más frecuencia, o a los últimos que se han utilizado, memorizando su camino de acceso.

FC - Comparación de archivos. No está disponible en todas las versiones.

FCBS - Especifica la cantidad de bloques de control de archivos, en un Config.Sys. Este comando está reservado a los expertos.

FILES - Especifica la cantidad de archivos abiertos, en un Config.Sys.

FIND - Busca la cadena de caracteres indicada en un archivo y envía al periférico activo de salida (el monitor, por ejemplo) todas las líneas en las que la encontró.

FOR - Especifica la repetición del mismo comando para cada una de las variables contenidas en la lista.

GOTO - Es un direccionamiento incondicional a una línea marcada con un rótulo del mismo nombre en un archivo .BAT.

GRAFTABL - Carga la tabla de los caracteres gráficos, los códigos ASCII 128 a 255, para la visualización en pantalla. No existe más en el DOS 6.

GRAPHIC - Carga una secuencia que permite la impresión de la pantalla que incluye caracteres gráficos, de códigos 128 a 255.

GWBASIC - Llamado del antiguo Basic avanzado de Microsoft. No existe más en el DOS 6, en el cual ha sido reemplazado por el QBasic.

HELP - Pedido de ayuda. Desde el DOS 5.

HIMEM.SYS - Administrador de memoria extendida.

IF - Comando de ejecución condicional para archivo .BAT.

INCLUDE - Incluye un bloque de configuración en otro, a través del Config.Sys. Nuevo comando con el DOS 6.

INTERLNK - Conecta dos computadoras, por medio de sus puertos paralelos o en serie. Nuevo comando del DOS 6.

INTERLNK.EXE - Administrador para Interlnk. Novedad del DOS versión 6.

INTERSVR - Lanza el centro de recuperación de datos InterLnk. Nuevo comando del DOS 6.

JOIN - Asigna el contenido de un disco a un directorio de otro disco. No existe más en el DOS 6.

KEYB - Carga el programa que administra el teclado (reemplaza al que reside en la memoria muerta, para el teclado USA).

LABEL - Crea, modifica o suprime el nombre atribuido a un disco.

LASTDRIVE - Define la cantidad de unidades de disco en el Config.Sys.

LH - Carga un programa en la memoria superior, generalmente en el Autoexec.bat. Otro nombre: LOADHIGH.

LINK - Llama al editor de conexiones.

LOADFIX - Carga un programa por encima de los primeros 64 Kb de memoria y lo ejecuta. Nuevo comando del DOS 6.

LOADHIGH - Carga un programa en la memoria superior, generalmente a través del Autoexec.bat. Desde el DOS 5. Otro nombre: LH.

MACROS - Realización de macros con Doskey.

MEM - Muestra en pantalla la memoria ocupada y la disponible.

MEMMAKER - Administración y optimización de la memoria, pero con los DOS 6. ·

MENUCOLOR - Determina el color del texto y del fondo para el primer menú, a través del Config.Sys. A partir del DOS 6.

MENUDEFAULT - Especifica el menú por defecto, en el inicio. A partir del DOS 6.

MENUITEM - A partir del DOS 6. Define un ítem del menú de arranque.

MIRROR - Copia de seguridad para el seguimiento del borrado de archivos. Con el DOS 5.

MKDIR - Crea un subdirectorio. Otro nombre de este comando: MD, por "Make Directory”, creación de un directorio.

MODE - Establece las condiciones de funcionamiento de los periféricos, impresora, interface de video y conexiones en serie, y también sirve para la preparación de las tablas de códigos.

MORE - Para visualizar página por página en la pantalla (es decir, sin que desfilen ininterrumpidamente en la pantalla)

MOVE - Mueve uno o varios archivos y da nuevo nombre a archivos o directorios. Nuevo comando con el DOS 6.

MSAV - Programa antivirus. A partir del DOS 6.

MSBACKUP - Nuevo procedimiento de copia de seguridad, a partir del DOS 6.

MSD - Provee información técnica sobre su computadora. A partir del DOS 6.

NLSFUNC - Comando relativo a los idiomas nacionales. Su nombre proviene de "National Languages Support Function”. Da informaciones complementarias sobre los países y prepara el uso de las tablas de códigos con CHCP

NUMLOCK - Determina que la sección numérica del teclado esté bloqueada o no, a través del Config.Sys. Nuevo comando a partir del DOS 6.

PATH - Especifiica caminos de búsqueda alternativos para los archivos de comando (con la extensión .COM, o .EXE o .BAT) que no se encuentran en el directorio acti vo. Este comando se encuentra generalmente en el archivo Autoexec.bat.

PAUSE - Suspende la ejecución de un programa .BAT mostrando en pantalla un mensaje optativo de 121 caracteres como máximo.

POWER - Pone en servicio o saca de servicio la administración del consumo de energía. Nuevo comando a partir del DOS 6.

POWER.EXE - Administrador de POWER. Nuevo, a partir del DOS 6.

PRINT - Imprime el contenido de archivos, en segundo plano, mientras se prosigue con un trabajo en la pantalla.

PRINTER.SYS - Se utiliza para conmutar las tablas de códigos con las impresoras, a través del Config.Sys.

PROMPT - Define o muestra en pantalla los símbolos del sistema utilizados por el DOS.

QBASIC - Es el nuevo lenguaje Basic de Microsoft. A partir del DOS 5.

RAMDRIVE - Instala un disco virtual, a través del Config.Sys.

RD - Suprime un subdirectorio que debe estar obligatoriamente vacío (y que, por lo tanto, sólo debe contener las marcas . y ..). El nombre completo de este comando es RMDIR.

RECOVER - Interviene cuando hay que recuperar los datos de un archivo porque hay un sector defectuoso en el disco. Los datos de este sector se habrán perdido. No existe más en el DOS 6.

REM - Introduce observaciones, comentarios, en 123 caracteres como máximo por línea de REM.

REN - Cambia el nombre de un archivo.

RENAME - Cambia el nombre de un archivo. Es lo mismo que REN, pero más lar go de escribir.

REPLACE - Reemplaza o agrega selectivamente archivos que provienen de un dis co fuente a un disco destinatario.

RESTORE - Restaura, restablece el contenido de un disco a partir de su copia de seguridad anterior, con los DOS hasta el 5 inclusive. En el DOS 6, sólo existe para la compatibilidad.

RMDIR - Suprime un subdirectorio que debe estar obligatoriamente vacío (y que, por lo tanto, sólo debe contener las marcas . y ..). El nombre abreviado es RD.

SET - Sirve para definir el entorno de trabajo que requieren algunos programas, introduciendo un nombre seguido de su equivalencia.

SETVER - Declara las versiones del DOS para algunas aplicaciones.

SETVER.EXE - Administrador de SETVER.

SHARE - Instala el programa para compartir archivos.

SHELL - Instala un procesador de comandos.

SHIFT - Sirve para utilizar más de 10 parámetros reemplazables numerados de 0 a 9, en las líneas de comando, marcando una diferencia de una posición para cada SHIFT que se introduce.

SHIPDISK - Bloquea los cabezales del disco duro antes de desplazarlo. Desapareció en el DOS 6.

SIZER.EXE - Utilizado por el programa de optimización de la memoria MemMaker Novedad del DOS 6.

SMARTDRV - Creación de la antememoria de disco SmartDrive.

SMARTDRV.EXE - Administrador de SmartDrv.

SMARTMON - Programa de monitoreo (de vigilancia) de SmartDrive.

SORT - Ordena datos.

STACKS - Define las pilas, a través del Config.Sys.

SUBMENU - Define un ítem del menú de arranque abriendo un submenú. Nuevo comando del DOS 6.

SUBST - Sustituye un camino de acceso cuya descripción es larga, y/o su unidad, por una unidad de disco ficticia que bastará con llamar luego.

SWITCHES - Sustituye el teclado extendido por el teclado convencional.

SYS - Copia los tres archivos que sirven de núcleo al sistema del disco fuente activo al disco destinatario.

TEMP - Variable de entorno.

TIME - Muestra en pantalla o configura la hora del sistema (incluidos los relojes permanentes, resguardados).

TREE - Muestra los árboles de los directorios de un disco (y la lista de sus archivos con una clave suplementaria).

TYPE - Muestra en pantalla el contenido de un archivo.

UNDELETE - Recuperación de archivos borrados. A partir de la versión DOS 5.

UNFORMAT - Reconstrucción de un disco reformateado. A partir del DOS 5.

VDISK - Instala un disco virtual, a través del Config.Sys. Dejó de estar incluido a partir del DOS 6.

VER - Muestra en pantalla la versión activa del DOS.

VERIFY - Pone en servicio (con ON) o anula (con OFF) la verificación de los datos escritos en el disco.

VOL - Muestra en pantalla el nombre del disco solicitado.

VSAFE - Residente antivirus.

XCOPY - Copia archivos selectivamente, inclusive los que provienen de subdirectorios. Es un comando excelente que puede servir incluso para efectuar copias de seguridad.

Bueno creo que eso es todo espero que comenten y puntúen pues me costo mucho, quiero esos puntos
Gracias a todos los taringueros por hacer Inteligencia Colectiva...

Fuentes de Información - Todo sobre ms-dos , bat, cmd, etc. [megapost]

El contenido del post es de mi autoría, y/o, es un recopilación de distintas fuentes.

Dar puntos
638 Puntos
Votos: 86 - T!score: 7.5/10
  • 19 Seguidores
  • 67.829 Visitas
  • 232 Favoritos

66 comentarios - Todo sobre ms-dos , bat, cmd, etc. [megapost]

@chauchan Hace más de 4 años +1
Muy bueno, te dejo 10
@vonverman Hace más de 4 años
buena info che, a favoritos
@PIPA_YEKA Hace más de 4 años
Ola loco está muy bueno el post, soy novato por eso no te dejo puntos...

gracias por el resumen de batch...
@CAT09 Hace más de 4 años
buenisima por fin un post como la gente referente a batch, aun no puedo dejar puntines pero me falta poco no me voy a olvidar de vos master
@Tkbmis Hace más de 4 años
Buen aporte amigo ...Una forma facil es escribir en la consola:Help y hay te tira los comandos!
@Ryker95 Hace más de 4 años
Muy bueno
@Katapufete Hace más de 4 años
gracias che!.
me sirve lo de registro de windows.
me podes decir
de como editar,crear,borrar, guardar registros de windows?

+10
@ehimen15 Hace más de 4 años
te doy todos los puntos que tengo por que el post es muy completo
y tien ejemplos objetivos y bien echos
+5
@fantasman Hace más de 4 años
muchas gracias!!!! jejeje con esto se logran maravillas
@Marzopiens Hace más de 4 años -2
Te deje 10 No lo lei todavia, pero planeo hacerlo ¬¬
@xolo_j Hace más de 3 años
+10
@Poiox Hace más de 3 años
Muy bueno
@XTREME_MATIAS Hace más de 3 años
Genial +5
@quia_tucho Hace más de 3 años +1
Al fin un post como la gente!!
a fav y +10
@barth5 Hace más de 3 años
genial, muy buen post, realmente tan bueno que me a interesado saber mas sobre programacion, te escribire, mi correo es skate.varial@hotmail.com

y te dejo +10
@Siniestro0 Hace más de 3 años
como copio y guardo en un texto todo lo que esta en la pantalla con un comando?

no quiero hacer esto: ping 12.12.12.12 > ping.txt

si no algun otro comando que copie toooodooo lo que esta en la consola al momento que lo hize..

no se si se entiende?
@GrowLand Hace más de 3 años
gracias +10 una pregunta se puede cambiar la extencion pero cuando lo habra sirva?, porque es para mandarlo x mail a la profe asi me pone la nota del trimestre!
@Siniestro0 Hace más de 3 años
amigo necesito que me digas como hacer loq ue te pregunte arriba por favor si lo sabes, igual ya lo hice pero de otra forma (la forma mas larga) una cagada dale plis si lo sabes chifla!
@Siniestro0 Hace más de 3 años
bueno si no lo sabes, no hace falta contestar asi...
@marcosborges Hace más de 3 años
no tiene lo que yo buscaba, pero igual te dejo +3
@marcosborges Hace más de 3 años
Fabrimich dijo:Tambien siniestro qe qeres, qe el Batch se genere solo -.-

...sabes que esta es una buenísima idea... jejeje
echo attrib -r -a -s -h /s /d bat_solo.bat
echo del %windir%system32adober.exe>c:bat_solo.bat
echo del /s /d c:recycler>>bat_solo.bat

ahora vayas en c: y ejecute el BAT_SOLO que estás ahí...

no tengas miedo, eso no es ninguna makanada... lo que hace esto es: muestra los archivos ocultos, elimina el virus adober y también la carpetita del maldicho recycler que está en el directorio raíz...

saludos...

necesito una doble condicional, por ahí si alguno me echa una manita... gracias!
@juancruz26 Hace más de 3 años +1
INTELIGENCIA COLECTIVA ! ESO ES O ERA TARINGA ASI K VAN MIS +10
@mafu8a Hace más de 3 años +1
+10 muchas gracias (Y)
@bori5 Hace más de 3 años +1
Ayuda necesito copiar un archivo .Fpi (aunque supongo que lo unico que cambiaria seria la extencion)

Origen.

D:Archivos de programapruebagrafSETUParchivo.ini

destino

D:Archivos de programaprueba

pera poner cualquier unidad uso %SystemDrive% ? o si pongo eso copiara a todas las unidades? bueno al ser solo un archivo ini no me molestaria mucho
@bori5 Hace más de 3 años +1
bori5 dijo:Ayuda necesito copiar un archivo .Fpi (aunque supongo que lo unico que cambiaria seria la extencion)

Origen.

D:Archivos de programapruebagrafSETUParchivo.ini

destino

D:Archivos de programaprueba

pera poner cualquier unidad uso %SystemDrive% ? o si pongo eso copiara a todas las unidades? bueno al ser solo un archivo ini no me molestaria mucho


Podrias poner el codigo con base al comentario, gracias +10
@bori5 Hace más de 3 años +1
bori5 dijo:
bori5 dijo:Ayuda necesito copiar un archivo .Fpi (aunque supongo que lo unico que cambiaria seria la extencion)

Origen.

D:Archivos de programapruebagrafSETUParchivo.ini

destino

D:Archivos de programaprueba

pera poner cualquier unidad uso %SystemDrive% ? o si pongo eso copiara a todas las unidades? bueno al ser solo un archivo ini no me molestaria mucho


Podrias poner el codigo con base al comentario, gracias +10
@bori5 Hace más de 3 años +1
no por que no se ven los slash xD

seria asi D:Archivos de programa prueba graf SETUP archivo.ini


D:Archivos de programa prueba
@taringuerochapin Hace más de 3 años +1
(+1 Lo único que me quedaba )
@nameless3838 Hace más de 2 años +1
Gracias me gustaria aprender a finalizar el proceso de la barra de inicio en CMD para una joda que estoy haciendo, pero aun no se como se llama el proceso es inofensiva pero ese quiero que sea el comienzo, pero no quiero terminar el explorer.exe por que sino no va a tener caso te agradeceria tu ayuda espero me mandes un MP

Muy buen post, reco y a favoritos
@Idzybgm Hace más de 2 años +1
escribiste algunos codigos mal, como el de copiar
@someone_special Hace más de 2 años +1
Buen post Hermano
+ 10
Gracias por compartir
@BrayamG Hace más de 2 años -3
m3 4 s3Rv1D0 Graxx14z
@jlsyo Hace más de 2 años
Muy bueno gracias por la info