Newsgroup: it.comp.os.dos
Titolo: chi sa far funzionare questo file batch...

ciao a tutti avrei bisogno di una mano per un file batch che lancio da dos.
il file pippo.bat parte all'avvio del pc e lancia una serie di comandi del
tipo:
gdisk 1 /del /all /y
gdisk 1 /cre /pri /sz:6000 /y
format c: /autotest
Ora, ho provato a combinare i comandi, ma non ci capisco granchč. Mi spiego
meglio. Il primo comando funziona come fdisk e mi permette di cancellare
ogni partizione del disco. Il secondo mi permette di creare una partizione
di 6 Gb. Il terzo mi permette di formattare la stessa partizione creata. Il
tutto deve esser eseguito in automatico senza intervento da parte
dell'utente.
Vi dicevo che ho provato a combinare questi comandi, ma mi blocco al primo.
Ovvero potrebbe anche funzionare su un hd giŕ partizionato, ma se non ci
sono partizioni mi si blocca al primo comando dicendomi che non ci sono
partizioni da cancellare.
C'č qualcuno che mi puň aiutare e mi sa dire come faccio a dire al file
batch che se il primo comando non va a buon fine (non posso cancellare
partizioni da un disco che non ha partizioni...), di proseguire con il
secondo e poi il terzo (in modo tale cosě da crearmi una partizione e
formattarmela!).
Vi ringrazio enormemente per ogni consiglio, č molto importante perchč mi
agevolerebbe i compiti di formattazione e reinstallazione di numerosi pc
adibiti a test in aula (pc che per lo meno una volta alla settimana devono
esser rifatti, con gran goduria di noi tecnici...)

 partizioni da cancellare.
Se si blocca vuol dire che il primo programma, in caso di errore, non
ritorna (immagino perché aspetta un input da parte dell'utente). E' così?


non ho ben capito cosa intendi su non ritorna, ma non richiede input da
parte dell'utente. Spiego com'è la situazione:
gdisk 1 /del /all /y        -> cancella tutte le partizioni del 1° disco
senza chiedere nulla
gdisk 1 /cre /pri /sz:6000 /y        ->crea una partizione primaria sul 1°
disco di 6Gb senza chiedere nulla
format c: /autotest        ->formatta la partizione senza chiedere nulla
ora tutto ciò va bene se ho un disco già partizionato. Ma se ho un disco
pulito, vergine, senza partizioni, il tutto mi si blocca al primo comando
dicendomi che non ci sono partizioni da cancellare e non prosegue. Io vorrei
ovviare a ciò e far proseguire in ogni caso la sequenza di comandi. E'
possibile? Grazie!

 Spiego com'č la situazione
Sě sě, avevo capito, pur con tutti i limiti derivanti dal non conoscere
questo "gdisk". Anche il tuo obiettivo mi č chiaro, e non mi sembra affatto
irraggiungibile. Il mistero č come mai il batch non proceda comunque, visto
che č questo il comportamento normale dei programmi batch.
Per vederci piů chiaro, prova, dopo ogni riga (a almeno dopo la prima) a
aggiungere una riga con comando PAUSE e a vedere se e quando ti esce il
relativo prompt "Premere un tasto per continuare...".
Fai sapere!
P.S. Immagino che sia gdisk, sia format stiano tutti e due su un floppy che
contiene anche il batch, giusto?

 ha scritto nel messaggio
news:bb83du$885$1...@lacerta.tiscalinet.it...

Col PAUSE funziona, ma se lo tolgo, mi si blocca appena ha visto che non ci
sono partizioni da cancellare! Perchč?
Importante: ho notato, che quando viene creata la partizione, poi richiede
come per l'fdisk il riavvio prima di poter formattare l'unitŕ. Ora, potrei
mettere un reboot dopo il comando per la creazione della partizione, ma come
faccio poi a far partire il comando format e non far riprendere il bat
dall'inizio al primo riavvio? Grazie, ciao...

 dall'inizio al primo riavvio? Grazie, ciao...
Per esempio, puoi mettere, tra la riga
gdisk 1 /cre /pri /sz:6000 /y
e la riga del reboot
ECHO G=FFFF:0000¦DEBUG
la riga seguente:
ECHO.>A:\PCREATED
che crea nella root del floppy un file di nome PCREATED.
Poi, all'inizio del batch, metti la riga
IF EXIST A:\PCREATED GOTO FORMAT
con relativa etichetta prima della riga del FORMAT.
Tirando le somme, il batch diventa:
@ECHO OFF
IF EXIST A:\PCREATED GOTO FORMAT
gdisk 1 /del /all /y
ECHO.|PAUSE>NUL
gdisk 1 /cre /pri /sz:6000 /y
ECHO.>A:\PCREATED
ECHO G=FFFF:0000¦DEBUG
:FORMAT
format c: /autotest
DEL A:\PCREATED

 dall'inizio al primo riavvio? Grazie, ciao...
Per esempio, puoi mettere, tra la riga
gdisk 1 /cre /pri /sz:6000 /y
e la riga del reboot
ECHO G=FFFF:0000|DEBUG
la riga seguente:
ECHO.>A:\PCREATED
che crea nella root del floppy un file di nome PCREATED.
Poi, all'inizio del batch, metti la riga
IF EXIST A:\PCREATED GOTO FORMAT
con relativa etichetta prima della riga del FORMAT.
Tirando le somme, il batch diventa:
@ECHO OFF
IF EXIST A:\PCREATED GOTO FORMAT
gdisk 1 /del /all /y
ECHO.|PAUSE>NUL
gdisk 1 /cre /pri /sz:6000 /y


ECHO G=FFFF:0000|DEBUG
Puoi far a meno di DEBUG.EXE, basta scrivere da console un file e
salvarlo in .COM, esempio brevissimo con l'INT 19h:
copy con c:\miadir\
reboot.com
 <INVIO>
alt-205 alt-19 ctrl-z <INVIO>
Per il tuo a caldo invece digiti l'indirizzo preceduto
dall'istruzione LEA (=carica indirizzo effettivo), eccolo in
hex: EA 00 00 FF FF e lo batti da console traducendo hex-->dec,
cioe` EAh=alt-234 eccetera.
Esempio, il 
reboot.com
 in hex e`: CD 19, cioe`: INT 19h assembly.
Per cr@sc, ma gdisk che programma e` e dove lo trovo?
-- 
Ciao,		| Attenzione! campo "Reply-To:" alterato ;^)
Remigio Zedda	| E-mail: 
remi...@tiscali.it
	-- Linux 2.4.18 su Debian GNU/Linux 3.0 "Woody"