Comandos de Consola o CMD
Comandos de Consola o CMD
Comandos de Consola o CMD
Que es batch?
dijo:Es un archivo de procesamiento por lotes: se trata de archivos de texto sin formato,
guardados con la extensin *.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 Programacin. Es un archivo de cdigo
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.
Escribindolos en un archivo de texto con extensin .bat y luego ejecutarlo.
echo:
Imprime un texto en pantalla, que es el texto que viene despus (el que le pasamos como
parmetro), que en este caso es "Hola Mundo". Echo significa eco, por lo mismo "@echo
off" elimina el eco, la repeticin de la ruta en la que nos encontramos en cada lnea cdigo.
pause:
Como bien se lee, pausa la ejecucin del cdigo. Adems muestra el texto "Presione una
tecla para continuar"
exit:
CD o CHDIR:
Si has trabajado en PHP, te ser fcil entender este concepto. Sirve para cambiar de
Directorio o Mostrar el nombre del actual. Para usarlo, CD o CHDIR seguido de la
ubicacin 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 ms archivos a otro destino.
Su sintaxis es la siguiente:
Copy "Direccin del archivo" "Nueva direccin"
Ejemplo:
Cdigo :
dijo: Copy "C:archivo.txt" "C:archivo2.txt"[/quote]
DEL:
Sirve para eliminar uno o ms archivos. Su sintaxis es:
Del "ARCHIVO"
Tambin se puede aadir:
del /f /q "archivo"
Donde no pide confirmacin de eliminacin (/q) y fuerza al archivo a borrarse ( /f )
Move:
Sirve para mover un archivo. Su sintaxis es:
Move "Direccin Archivo" "Nueva Direccin"
Cls:
Sirve para limpiar el contenido de la pantalla:
Ejemplo:
Cdigo :
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 quisiramos averiguar ms 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 informacin necesaria.
Podemos poner en prctica esto de la siguiente manera:
Personalizando el SHELL
Seguro que no te gusta mucho el aspecto del Shell.
Aqu veremos cmo personalizarlo un poco.
COLOR:
Con la funcin 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 ttulo 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, quedara as.
Cdigo:
dijo: echo Aprieta cualquier tecla para seguir
pause>nul[/quote]
Adems puedes jugar con los caracteres. Aqu un ejemplo, donde cambi los colores y
jugu con los caracteres y personalic el pause:
Matando Procesos:
Alguna vez has presionado CTRL+ALT+DELETE?
ABRIENDO PROCESOS:
Ahora abramos ese proceso que cerramos. Para abrir procesos se usa la funcin Start que
funciona as:
Cdigo:
dijo: start proceso.exe[/quote]
Tambin puedes abrir pginas web con tu explorador predeterminado.
Ejemplo1:
Cdigo:
dijo: start wmplayer.exe[/quote]
Se abrir el Reproductor de Msica
Ejemplo2:
Cdigo :
dijo: start www.google.cl[/quote]
Para llamarla debemos escribir su nombre entre los signos %%
Ejemplo:
Cdigo :
dijo:@echo off
set Nombre= Fabrimich
echo %Nombre%
pause[/quote]
VARIABLES:
Ahora aprendamos a declarar variables. Para crear una se escribe:
Cdigo:
dijo: set NOMBREVARIABLE = VALOR[/quote]
Para cambiar el valor solo debemos hacer esto:
Cdigo :
dijo: set Nombre= Nuevo Valor[/quote]
Si quieres que tu Variable sea dinmica, o sea que el Usuario la elija antepones /p:
Cdigo :
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.
Tambin podemos multiplicarlas, sumarlas, etc.. con /a:
Cdigo :
dijo: set numero1=2
ser numero2=43
Uso de etiquetas
Como bien sabemos la lectura de los cdigos Batch se leen de una manera lineal, pero
existe una forma para que el Batch se salte lneas, o vuelva a alguna anterior. Esto se logra
con Etiquetas y la funcin GOTO.
Para crear una etiqueta solo debemos escribir:
Cdigo :
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.
Cdigo:
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 Maysculas y Minsculas no se diferencian.
Condicionales:
El primer condicional que veremos el ms usado.
IF:
Se puede ocupar para comparar, cadenas, nmeros o para saber si existen archivos.
Ejemplo de sintaxis, if %cadena1% == %cadena2% OrdenAEjecutar
Que se podra leer de la siguiente manera. Si cadena1 es igual a Cadena2 ejecutemos la
Orden OrdenAEjecutar.
Tambin 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 tambin 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:
Cdigo :
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 nmeros.
Aqu se repetir un Echo, que imprimir nmeros 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 funcin que se ejecutara en cada repeticin del comando, en este
caso un echo que imprimir la variable.
dijo:Batch en algunos casos SI reconoce entre maysculas y minsculas, 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 continuacin:
Listado de archivos:
Cdigo :
dijo:@echo off
FOR %%x in (a*) DO echo %%x
pause[/quote]
Este cdigo, listara todos los archivos que comienzan con A.
Por qu? * (Asterisco) es un signo comodn, por lo cual al poner a*, estamos diciendo
cualquier archivo que tenga una A delante y luego cualquier cosa.
Otro ejemplo del uso de comodn, es listar archivos con extensin comn como seria este:
Cdigo:
dijo:@echo off
FOR %%x in (*.jpg) DO echo %%x
pause[/quote]
Aqu nos estara listando todos los archivos que tengan la extensin .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 quisiramos 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 quisiramos listar todos los documentos que estn dentro de una carpeta contando los
que estn dentro de carpetas se ocupa solamente /R (Sin /D)
FOR /R %%x in (a*) DO echo %%x
Con esto creo que tenemos lo bsico, y ms importante de los condicionales. Talvez otro
claber se anime a profundizar ms en el tema.
Creacin de Mens:
Como ya vimos Condicionales y Etiquetas les enseare una manera de hacer Mens.
Comenzaramos indicando las instrucciones y las opciones, de esta manera:
Cdigo :
dijo:@echo off
:Menu
cls
echo Seleccione su opcin tecleando el numero respectivo.
echo.
echo 1. Primera Opcin
echo 2. Segunda Opcin
echo 3. Salir
[/quote]
Luego para seguir ocuparamos esto:
Cdigo :
dijo:set /p var=
if %var%==1 goto Primero
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 nmero es mayor que 3 nos avisara que no existe esa
opcin. Tambin 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.
Cdigo:
dijo:Primero
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 Opcin
Echo Presione una tecla para volver al men
Pause>Nul
goto :Men
[/quote]
Quedando para terminar nuestro cdigo as:
Cdigo :
dijo:@echo off
:Menu
cls
echo Seleccione su opcin tecleando el numero respectivo.
echo.
echo 1. Primera Opcin
echo 2. Segunda Opcin
echo 3. Salir
set /p var=
if %var%==1 goto Primero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Men
primero
cls
color a
Echo Esta es la Primera Opcin
Echo Presione una tecla para volver al men
Pause>Nul
goto :Men
:Segundo
cls
color 1a
Echo Esta es la Segunda Opcin
Echo Presione una tecla para volver al men
Pause>Nul
goto :Menu[/quote]
Bueno, con eso les basta para imaginarse como crear sus mens personales.
Como vieron puede cada seccin tener su color, incluso puedes cambiar la barra de titulo.
Ve probando, no pierdes nada.
Cdigo:
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.
Tambin 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 daar el pc y luego se
reinicia es este:
Cdigo:
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 funcin
AT puedes programar el apagado.
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 haremos que nuestro batch se ejecute con el Sistema.
Cdigo:
dijo:REG ADD
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun /v
MIBATCH.bat /t REG_SZ /d
C:MIBATCH.bat[/quote]
Con la funcin REG ADD Agregamos algo al registro. Con otros comandos podemos
borrar.
Lo que sigue es la "Direccin" de donde insertaremos el registro que en este caso ser para
que nuestro batch se ejecute al iniciar Sesin.
En medio de toda la direccin se puede leer MIBATCH.bat yo puse el nombre del Batch
pero tambin se puede poner cualquier otra cosa. Ms adelante donde dice
C:MIBATCH.bat, es la direccin completa de donde esta nuestro Batch.
EDIT - Editor que reemplaza a Edlin desde el DOS.5. Se usar esencialmente para
modificar pequeos 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 asignacin de los archivos (FAT), y
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 efecte una seleccin en una
secuencia batch.
CLS - Simplemente borra la pantalla, sin cambiar ninguna otra cosa. Es un coman do
pequeo 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 configuracin que dispone de instrucciones propias. Este
archivo se ejecuta automticamente cada vez que se pone en funcionamiento la
computadora.
COUNTRY - Nacionaliza el sistema, adaptndolo al pas.
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
compresin puede variar normalmente de 1,7 a ms de 10, segn 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 posicin final del archivo
dblspace.bin.
DEBUG - Lanza el programa de "debugging' (eliminacin 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 (acta como el comando ERASE).
DELOLDOS - Suprime la puesta en reserva de un DOS antiguo.
DELTREE - Una novedad del DOS 6. Suprime un directorio y todo lo que contiene,
incluyendo los subdirectorios, en una sola operacin.
DEVICE - Instala un driver de perifrico, 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 idntico el contenido de un disquete fuente en un disquete
destinatario rigurosamente del mismo formato, formateando previamente este ltimo y
hacindolo sobre el modelo del disquete fuente si es necesario.
DISPLAY.SYS - Se utiliza para conmutar las tablas de cdigos, va el config.sys.
DOS - Establece un vnculo entre la memoria convencional y la memoria superior a travs
del config.sys.
DOSKEY - Instala el programa de memorizacin y de llamado de los comandos instalados
anteriormente. De esta manera, se evita tener que volver a escribirlos.
DOSSHELL - Llama a la superestructura de dilogo del DOS. Este dos shell ha sido
suprimido en la versin DOS 6.2 ya que Microsoft consider que haba sido reemplazado
ventajosamente por el Administrador de archivos de ese sper programa que es
Windows.
DRIVER.SYS - Administra las disqueteras, a travs del Config.Sys.
DRIVPARM - Define los parmetros de perifricos en modo bloque, a travs del
Config.Sys.
DRIVESPACE - Reemplaza a DBLSPACE a partir del DOS 6.22, con las mismas
funciones.
escribir.
REPLACE - Reemplaza o agrega selectivamente archivos que provienen de un disco
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, slo existe para la compatibilidad.
RMDIR - Suprime un subdirectorio que debe estar obligatoriamente vaco (y que, por lo
tanto, slo 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 ms de 10 parmetros reemplazables numerados de 0 a 9, en las
lneas de comando, marcando una diferencia de una posicin 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 optimizacin de la memoria MemMaker
Novedad del DOS 6.
SMARTDRV - Creacin de la ante memoria de disco SmartDrive.
SMARTDRV.EXE - Administrador de SmartDrv.
SMARTMON - Programa de monitoreo (de vigilancia) de SmartDrive.
SORT - Ordena datos.
STACKS - Define las pilas, a travs 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 descripcin 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 ncleo 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 - Recuperacin de archivos borrados. A partir de la versin DOS 5.
UNFORMAT - Reconstruccin de un disco reformateado. A partir del DOS 5.
VDISK - Instala un disco virtual, a travs del Config.Sys. Dej de estar incluido a partir del
DOS 6.
VER - Muestra en pantalla la versin activa del DOS.
VERIFY - Pone en servicio (con ON) o anula (con OFF) la verificacin 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.
INFORMACION TOMADA DE AQU: http://www.taringa.net/posts/info/6020929/Todosobre-ms-dos-bat-cmd-etc-megapost.html