Page cover

Scripts de práctica de Windows

Algunos ejercicios para practicar scripts

1. Script para Crear Copias de Seguridad

Crea un script que copie archivos de una carpeta a otra, simulando una copia de seguridad.

Ejemplo:

@echo off
set source=C:\Users\[tu_usuario]\Documents
set backup=C:\Backup

echo Creando copia de seguridad de %source% en %backup%
xcopy %source% %backup% /s /e /y
echo Copia de seguridad completa.
pause

Incluso se podria llegar a mejorar para pedir al usuario:

@echo off
set/p source=¿De que carpeeta quieres hacer el backup?
set/p backup=¿Donde quieres hacer la copia?

echo Creando copia de seguridad de %source% en %backup%
xcopy %source% %backup% /s /e /y
echo Copia de seguridad completa.
pause

2. Script para Limpiar Archivos Temporales

Un script que borre archivos temporales de una carpeta específica, como la carpeta Temp de Windows.

Ejemplo:

@echo off
echo Borrando archivos temporales...
del /s /q C:\Users\[tu_usuario]\AppData\Local\Temp\*
echo Archivos temporales eliminados.
pause

3. Script para Comprimir Archivos Automáticamente

Usa el comando compact para comprimir una carpeta o conjunto de archivos automáticamente.

Ejemplo:

@echo off
set folder=C:\Users\[tu_usuario]\Documents
echo Comprobando y comprimiendo archivos en %folder%
compact /c /s:%folder%
echo Proceso completado.
pause

O se puede pedir al usuario el directorio:

@echo off
set/p folder=¿Que directorio quieres comprimir?
echo Comprobando y comprimiendo archivos en %folder%
compact /c /s:%folder%
echo Proceso completado.
pause

4. Script para Mostrar el Uso de Disco

Un script que muestre el uso del disco duro y guarde los resultados en un archivo de texto.

Ejemplo:

@echo off
echo Mostrando el uso del disco...
set ruta="C:\Users\[tu_usuario]\Desktop\disk_usage.txt"
wmic logicaldisk get size,freespace,caption > %ruta%
echo Los resultados se han guardado en %ruta%
pause

Para complicarlo puedes automatizarlo para que vaya añadiéndolo en directo a un archivo de texto.

5. Script para Renombrar Archivos en Masa

Un script que renombre todos los archivos de un directorio añadiendo un prefijo o sufijo.

Ejemplo:

@echo off
set folder=C:\Users\[tu_usuario]\Documents\files
set prefix=backup_

for %%f in (%folder%\*) do (
    rename "%%f" "%prefix%%%~nxf"
)
echo Archivos renombrados correctamente.
pause

6. Script para Mostrar la Fecha y Hora Actual

Este script simplemente imprime la fecha y la hora actuales en la consola.

Ejemplo:

@echo off
echo La fecha y hora actual es:
date /t
time /t
pause

Podemos complicarlo un poco más, un script que guarda la fecha y la hora actuales en variables y muestra en la consola mediante un string apelando al nombre del usuario por defecto:

// Some code

Podemos hacer tambien que muestre el string con formato de fecha personalizado:

@echo off
setlocal enabledelayedexpansion
set year=%date:~6,4%
set month=%date:~3,2%
set day=%date:~0,2%
set hour=%time:~0,2%
set min=%time:~3,2%
set sec=%time:~6,2%
set custom_timestamp=%year%-%month%-%day%_%hour%-%min%-%sec%
echo Fecha y hora (formato personalizado): %custom_timestamp%

7. Script para Mostrar Información del Sistema

Crea un script que muestre información básica del sistema, como la versión de Windows, el nombre del equipo y el tiempo de arranque.

Ejemplo:

@echo off
echo Informacion del sistema:
systeminfo | findstr /C:"OS Name" /C:"OS Version" /C:"System Manufacturer" /C:"System Model"
pause

8. Script para Pingar Varios Sitios Web

Un script que haga ping a varios sitios web y guarde los resultados en un archivo de texto.

Ejemplo:

@echo off
set websites=google.com yahoo.com bing.com
set logfile=C:\Users\[tu_usuario]\Desktop\ping_results.txt

echo Iniciando prueba de ping...
for %%site in (%websites%) do (
    echo Haciendo ping a %%site >> %logfile%
    ping %%site >> %logfile%
    echo. >> %logfile%
)
echo Prueba de ping completada. Revisa los resultados en %logfile%.
pause

9. Script para Crear Estructura de Carpetas

Este script crea una estructura de carpetas predefinida en una ubicación determinada.

Ejemplo:

@echo off
set basefolder=C:\Users\[tu_usuario]\Documents\Proyectos
set /p projectname="Nombre del proyecto: "

mkdir %basefolder%\%projectname%\docs
mkdir %basefolder%\%projectname%\src
mkdir %basefolder%\%projectname%\assets

echo Estructura creada para el proyecto %projectname%.
pause

10. Script de Menú Interactivo

Un script que muestre un menú interactivo donde el usuario pueda elegir una opción para ejecutar diferentes acciones.

Ejemplo:

@echo off
:menu
echo =======================
echo 1. Mostrar fecha y hora
echo 2. Crear carpeta en el escritorio
echo 3. Salir
echo =======================
set /p choice="Elige una opcion: "

if %choice%==1 goto fecha
if %choice%==2 goto crearcarpeta
if %choice%==3 goto salir
goto menu

:fecha
date /t
time /t
pause
goto menu

:crearcarpeta
set /p foldername="Nombre de la carpeta: "
mkdir C:\Users\[tu_usuario]\Desktop\%foldername%
echo Carpeta creada.
pause
goto menu

:salir
exit

Última actualización