Sto cercando di creare un semplice script batch per cancellare/azzerare un'unità flash e riformattarlo. È per gli altri, quindi sto cercando di renderlo relativamente sicuro, bloccando la formattazione in C :, D :, ecc.Comando batch if else comando
Sto cercando un comando di tipo IF ELSE che posso usare, per essere un errore di cattura -tutti.
Ecco (la parte principale di) quello che ho ATM
:again
echo.
cls
echo.
echo Please select the drive letter for the flash
echo drive you wish to erase
echo.
echo **** DO NOT SELECT C: OR D: ****
echo.
echo.
echo *** Enter letter (no colon) ONLY e.g. "E" ***
echo.
set /p answer=
cls
echo.
echo.
echo.
if /i "%answer:~,1%" EQU "e" format E: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "f" format F: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "g" format G: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "h" format H: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" NOT exist goto again && echo Please provide a valid drive letter for flash drive
echo.
Ora so che
if /i "%answer:~,1%" NOT exist goto again && echo Please provide a valid drive letter for flash drive
non è sintassi valida, ma quello che ho potuto utilizzare al fine di raggiungere lo stesso obiettivo ? So che c'è un modo più efficace per fare questo (ad esempio, invece di definire 4 variabili per lettere di unità probabili, mettere una singola variabile che ascolta l'input dell'utente e accettarlo se esiste.)
Questa è la mia prima incursione in script batch (e script in generale) e sto imparando al volo, quindi il "più stupido" è possibile farlo, meglio è.
Grazie in anticipo.
È inoltre necessario sfuggire la parentesi nel comando echo. –
dove deve essere collocata questa parentesi? L'ho posizionato dopo "flash drive" e il comando è stato ripetuto. – CharlieTango92
Nel tuo codice in cui ha qualcosa come echo blah ... (senza due punti) ... è necessario sfuggire alle parentesi. Sono sul mio telefono in modo da poter vedere il mio problema. –