Programación Batch Con Archivos

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 12

Programacin Batch con archivos .

bat
En este tip hablaremos sobre cmo manejar algunas funciones de Windows
mediante archivos Batch.

Batch, segn Wikipedia es:
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.

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.

Hola Mundo en Batch

Comenzaremos creando un Simple y clsico "Hola Mundo", escribiendo en un
archivo de texto el siguiente cdigo.
Cdigo :
@echo off
echo Hola Mundo
pause
exit

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 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:

Cierra la ventana de comandos.

Para dejar ms en claro cual sera la diferencia de no ocupar la linea @echo off la
imagen de a continuacin muestra como se vera la pantalla sin esta linea.




Ahora aprenderemos algunas funciones de Batch:
CD o CHDIR:

Si has trabajado en PHP, te sera fcil entender este concepto. Sirve para cambiar
de Directorio o Mostrar el nombre del actual. Para usarlo, CD o CHDIRseguido 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 :
Copy "C:\archivo.txt" "C:\archivo2.txt"

Aqu copiaramos un archivo del Disco C llamado "archivo.txt" como "archivo2.txt"
Para acortar un poco podramos usar:
Cdigo :
cd "C:\"
Copy "archivo.txt" "archivo2.txt"

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 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 :
@echo off
echo Hola, Cuando pulses la tecla se borrara el contenido y
cambiara por otro.
pause
cls
echo Ves?
pause
exit


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:
Abramos el Shell de windows:
Inicio->Ejecutar-CMD

Una vez abierto escribamos:
Cdigo :
echo off

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

Ahora veamos la ayuda de la funcin Copy:
Cdigo :
copy /?

Cerremos la ventana:
Cdigo :
exit


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 crears 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:
Cdigo :
@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

Gurdalo en la carpeta como NombreQueTuQuieras.bat, y ejectalo.

Lo que ha hecho la cadena de instrucciones es ms o menos lo siguiente:
Primero apagamos el eco, luego imprimimos en pantalla "Hola, Copiaremos un
archivo"
Pausamos el intrprete para que no siga de largo.
A continuacin, copiamos el archivo "Copiame.txt" y su copia se llamar
"copiado.txt". La movemos a la carpeta raz del disco C, y eliminamos el original.
Por ultimo cambiamos de directorio al disco C, copiamos la copia y cerramos el
Batch.

Despus 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.
Tambin si vamos a la carpeta del Batch, veremos no est el archivo de texto
original, "copiame.txt".
Creacin de nuevos archivos:

Con Batch podemos crear otros archivos. Para ello, tenemos que escribir algo
como esto:
Cdigo :
echo TEXTO DE PRIMERA LINEA > nombre.extensin
echo TEXTO SEGUNDA LINEA >> nombre.extensin
echo TEXTO SIGUIENTE LINEA >> nombre.extensin


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 vaca del archivo que prosiga.

Hagamos la prueba:
Cdigo :
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


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 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 :
echo Aprieta cualquier tecla para seguir
pause>nul


Adems puedes jugar con los caracteres. Aqu un ejemplo, donde cambi los
colores y jugu con los caracteres y personalic el pause:




El cdigo que emple para esto fue:
Cdigo :
@echo off
color 30
echo ==================================
echo = =
echo = Personalizado =
echo = =
echo ==================================
echo.
echo.
echo Esto esta personalizado, para salir presiona una tecla.
pause>nul
exit


Cabe mencionar que echo. (Echo seguido de un punto)sirve para saltarse una
lnea.
Matando Procesos:

Alguna vez has presionado CTRL+ALT+DELETE?
Si lo haces se abre el Administrador de tarea. En la pestaa procesos salen
algunos procesos que estn andando en tu pc, hacindoles clics y apretando
"terminar proceso" lo puedes acabar.
Con batch eso es muy fcil, se usa la funcin:
Taskkill (No funciona en todos los pc, para ver si esta disponible
escribe taskkill/?)
Su sintaxis es:
Cdigo :
taskkill /f /im proceso.exe


/f Fuerza el trmino del proceso.

Un ejemplo seria escribir.
Cdigo :
taskkill /f /im wmplayer.exe

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
funcin Start que funciona as:
Cdigo :
start proceso.exe

Tambin puedes abrir paginas web con tu explorador predeterminado.
Ejemplo1:

Cdigo :
start wmplayer.exe

Se abrir el Reproductor de Msica
Ejemplo2:

Cdigo :
start www.google.cl

Se abrir tu Explorador de Internet en Google.
VARIABLES:


Ahora aprendamos a declarar variables. Para crear una se escribe:
Cdigo :
set NOMBREVARIABLE = VALOR

Para llamarla debemos escribir su nombre entre los signos %%
Ejemplo:
Cdigo :
@echo off
set Nombre= Javier Letelier Ruiz
echo %Nombre%
pause

La pantalla nos mostrara algo as:




Para cambiar el valor solo debemos hacer esto:
Cdigo :
set Nombre= Nuevo Valor

Si quieres que tu Variable sea dinmica, osea que el Usuario la elija antepones /p:
Cdigo :
set /p Nombre=Escriba su Nombre:

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 :
set numero1=2
ser numero2=43
set /a suma= %numero1% + %numero2%
echo %suma%
pause
exit


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.

También podría gustarte