Crear ficheros de tamaño específico V2.0

Bueno, esto es una extensión del post en el que ya indiqué como Crear ficheros de tamaño específico.
Como el ficherito “.bat” que puse de ejemplo me daba algunos errores cuando ya existía algún fichero y además se me quedaba un poquito justo, decidí crear un fichero un poco más elaborado que, además de corregir algunos errores en la ejecución, me permite elegir el tamaño de los ficheros que quiero crear.
Al ejecutarlo queda así:

Os dejo aquí el código:
@echo off
cls
color 71
echo ======================================
echo =                       Crear ficheros                                     =
echo =                       —————                                    =
echo =                                                                                  =
echo =                         1.- 2GB                                            =
echo = 2.- 1GB =
echo = 3.- 512MB =
echo = 4.- 256MB =
echo = 5.- 128MB =
echo = 6.- 64MB =
echo = =
echo = =
echo ======================================
echo.
echo.
set /p select=Selecciona el tipo de fichero:
if not «%select%»==»» set select=%select:~0,1%
if «%select%»==»1» goto 2GB
if «%select%»==»2» goto 1GB
if «%select%»==»3» goto 512MB
if «%select%»==»4» goto 256MB
if «%select%»==»5» goto 128MB
if «%select%»==»6» goto 64MB
echo «%selct%» no es un valor admitido, vuelva probar
echo.
:2GB
set tamf=2147483648
set tf=2GB
goto numfiles
:1GB
set tamf=1073741824
set tf=1GB
goto numfiles
:512MB
set tamf=536870912
set tf=512MB
goto numfiles
:256MB
set tamf=268435456
set tf=256MB
goto numfiles
:128MB
set tamf=134217728
set tf=128MB
goto numfiles
:64MB
set tamf=67108864
set tf=64MB
goto numfiles
:numfiles
set n=0
set /p nfiles=Cuantos archivos de %tf% quieres crear?:
set nf=%nfiles%
:sumfile
set /A n=%n% + 1
if not exist «archivo%n%.dat» goto resta1
set /A nfiles=%nfiles% + 1
goto sumfile
:resta1
set /A n=%n% – 1
:crfich
if %n%==%nfiles% goto fin
set /A n=%n% + 1
fsutil file createnew «archivo%n%.dat» %tamf%
goto crfich
:fin
echo Se han creado %nf% ficheros de %tf%
pause

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.