PROBLEMA Problema xcopy - MsDos

Pubblicità

Df1993

Nuovo Utente
Messaggi
8
Reazioni
0
Punteggio
21
Ciao a tutti, nel caso abbia sbagliato zona in cui postare chiedo scusa. È il mio primo post. Ringrazio in anticipo per la pazienza e per l'aiuto :)

Passiamo al problema:

Mi trovo nella situazione in cui debbo fare ripetuti trasferimenti di file in blocchi piuttosto consistenti tra vari pc.
Per mille motivi che non elencheró debbo PER FORZA utilizzare un hard disk esterno come mezzo di trasporto, no rete, no cloud no simili.
Ultimamente per guadagnare tempo mi sono cimentato nella creazione di alcuni banali file batch per permettermi di non badare costantemente alla fase di trasferimento.
Mi ha messo molto in difficoltà il fatto che, essendo il mio un device esterno, da pc a pc cambia IL PATH di destinazione dei file perchè cambia la lettera identificativa del mio device. Per il percorso di sorgente nessun problema, sono tutti uguali.
Ora, vorrei "dire" al mio programma una sorta di "copia tutti i file/strutture ad alberop che ti ho detto nella cartella in cui sto eseguendo questo programma" indipendentemente dal percorso che essa ha. Esiste un modo?
Mi sembra doveroso dire anche che il metodo dell' "assegnare una lettera univoca al device" non è utilizzabile. Nemmeno qui mi dilungo nel specificare i vari perchè.
Spero di essermi spiegato e capisco di essere stato molto prolisso. Credo peró sia tutto necessario per inquadrare la problematica ed eventualmente risolverla.
Grazie ancora
 
Vediamo se ho capito bene il tuo problema, dovresti modificare i tuoi file bat in base al pc (in ogni pc questo hard disk ha una lettera differente). Se il problema è quello, allora puoi provare ad utilizzare il comando IF per identificare l'unità di destinazione (il migliore dei modi sarebbe utilizzare un loop FOR, ma non sono mai riuscito a capire come farlo funzionare come si deve). Non sarà una soluzione "pulita", ma sono certo che funzioni.
Crei un file (es unita.txt) sulla cartella principale del disco ed utilizzi quanto sotto all'inizio di ogni file bat
Codice:
if exist d:\unita.txt set dest=d
if exist e:\unita.txt set dest=e
if exist f:\unita.txt set dest=f
e continui così sino alla z
e quindi modifichi TUTTI i gli altri bat in modo che al posto di d:\cartellabackupocomepiùtipare in %dest%:\cartellabackupocomepiùtipare
Così facendo dovrebbe rilevare in automatico in quale unità deve fare il backup

PS dimenticavo, BENVENUTO!!!
 
Grazie :)
E questa sarebbe un'ottima soluzione. Avevo pensato anche io ad una cosa del genere ma, ahimè, non sempre il mio device è l'unico collegato. Quindi rischierei di far finire tutti i file su un altra destinazione.
Si è un casino lo capisco. Ma mi sembra impossibile che non ci sia una soluzione a prova di errore (nel limite della umana possibilità chiaramente, poi la sfiga ci vede sempre benissimo. Si sa)
 
Vediamo se ho capito bene il tuo problema, dovresti modificare i tuoi file bat in base al pc (in ogni pc questo hard disk ha una lettera differente). Se il problema è quello, allora puoi provare ad utilizzare il comando IF per identificare l'unità di destinazione (il migliore dei modi sarebbe utilizzare un loop FOR, ma non sono mai riuscito a capire come farlo funzionare come si deve). Non sarà una soluzione "pulita", ma sono certo che funzioni.
Crei un file (es unita.txt) sulla cartella principale del disco ed utilizzi quanto sotto all'inizio di ogni file bat
Codice:
if exist d:\unita.txt set dest=d
if exist e:\unita.txt set dest=e
if exist f:\unita.txt set dest=f
e continui così sino alla z
e quindi modifichi TUTTI i gli altri bat in modo che al posto di d:\cartellabackupocomepiùtipare in %dest%:\cartellabackupocomepiùtipare
Così facendo dovrebbe rilevare in automatico in quale unità deve fare il backup

PS dimenticavo, BENVENUTO!!!

Bene, mi sono reso conto solo ora che non avevo letto un pezzo del codice perchè coperto dalla mia fantastica impaginatura da telefono :ops:
Ok ora tutto ha più senso. Proveró a realizzare qualcosa poi eventualmente vi sapró dire :thanks:
 
Dovrebbe funzionare, e se riesci ad utilizzare il comando "for" viene di gran lunga più "pulito" (poche righe per ottenere lo stesso risultato)...
 
L'hd esterno puoi montarlo sempre con la stessa lettera, Win è un disastro ma almeno questa funzionalità base ce l'ha :asd:
 
Pubblicità
Pubblicità
Indietro
Top