I'm doing a script that will make a bootable usb from some files and has several options, but it does not work for me, and because I do not know the language very well, I think I have more than one and more than two syntax problems, to see if someone can throw a cable to correct this, thank you very much for the help!
I also need the diskpart list disk command to show the list of connected devices, but I do not know how to echo a command.
Any advice / improvement is accepted!
@echo off
set isNumber=false
set validEntry=false
set 1=false
set 2=false
mkdir so
echo Script para crear usb boot
echo ------------------------------------------------------
echo Debe descomprimir el contenido de la iso del sistema operativo
echo en la carpeta 'so' que viene con el script.
echo ------------------------------------------------------
echo Por el contrario, debe montar la iso
echo virtualmente e introducir la ruta de los archivos.
echo ------------------------------------------------------
:validate
set /p "option=Va a montar la iso o a descomprimir los archivos en la carpeta 'so'? ('1' para descomprimir / '2' para montar): "
if %option% equ 1(
%validEntry%=true
%1%=true
)
if %option% equ 2 (
%validEntry%=true
%2%=true
)
if %validEntry% equ true(
diskpart list disk
:select_disk
set /p "disk=Introduzca el número del disco correspondiente: "
if %disk% EQU 0 %isNumber%=true
if %disk% GRT 0 %isNumber%=true
if %isNumber% equ true (
diskpart select disk %disk%
diskpart clean
diskpart create partition primary
diskpart active
diskpart format fs=fat32
diskpart assign
)else(
echo El valor introducido no es correcto, vuelva a intentarlo.
goto select_disk
)
if %1% equ true(
set /p path=Introduzca la ruta del disco que desea convertir en bootable (Por ejemplo E:\):
xcopy /s/e/f so\*.* %path%
)
if %2% equ true(
set /p path_iso=Introduzca la ruta del archivo iso montado (Por ejemplo E:\):
set /p path_disk=Introduzca la ruta del disco que desea convertir en bootable (Por ejemplo F:\):
xcopy /s/e/f %path_iso%\*.* %path_disk%
)
)
if %validEntry% equ false(
echo El valor introducido es incorrecto, vuelva a intentarlo.
goto validate
)