Precedente :: Successivo |
Autore |
Messaggio |
Mascetti Comune mortale

Registrato: 30/12/09 10:14 Messaggi: 1
|
Inviato: 30 Dic 2009 10:24 Oggetto: File Batch per Backup progressivo |
|
|
Ciao a tutti sono nuovo e spero di postare questo topic nella sezione giusta:
Ho bisogno di creare un file bath per eseguire un backup progressivo per 7 giorni di un determinato file pippo. Mi spiego meglio: vorrei che il file pippo.txt posto nella dir C:\topolino venisse copiato nella dir C:\paperino e rinominato con estensione 001 002 ecc a secondo del giorno della settimana fino a 007 e poi sovrascrivere da 001 e così via.
Si può fare?
Spero di essere stato chiaro
Ciao a tutti e buon anno |
|
Top |
|
 |
madvero Amministratore


Registrato: 05/07/05 21:42 Messaggi: 19508 Residenza: Sono brusco con voi solo perchè il tempo è a sfavore. Penso in fretta, quindi parlo in fretta
|
Inviato: 05 Gen 2010 15:33 Oggetto: |
|
|
certo che si può fare!!!
è che io con la sintassi dei batch mi impasto sempre che è una meraviglia...
chiamiamo cartella1 la cartella col documento (per esempio documento.doc) da backuppare e cartella2 quella che deve contenere il backup.
la copia (per una settimana) del file documento, con la rinomina del file, si può fare anche con un batch dei poveri (senza :level per intendersi)...
tipo questo (se lo incolli in un foglio di testo e lo salvi con estensione .bat, vedrai che funziona:
Codice: | copy cartella1\documento.doc cartella2
if not exist cartella2\documento001.doc ren cartella2\documento.doc documento001.doc
if exist cartella2\documento001.doc ren cartella2\documento.doc documento002.doc
if exist cartella2\documento002.doc ren cartella2\documento.doc documento003.doc
if exist cartella2\documento003.doc ren cartella2\documento.doc documento004.doc
if exist cartella2\documento004.doc ren cartella2\documento.doc documento005.doc
if exist cartella2\documento005.doc ren cartella2\documento.doc documento006.doc
if exist cartella2\documento006.doc ren cartella2\documento.doc documento007.doc |
ammetto candidamente che mi inchiodo al passo successivo, ovvero dove dovrei scrivere
Codice: | if exist cartella2\documento007.doc replace cartella2\documento001.doc cartella1\documento.doc |
che non funziona.
un po' per mia ignoranza, un po' perchè avendo win xp dovrei scaricarmi il disco supplementare ms-dos 6.22 almeno per avere la funzione choice...
un po' anche perchè metterci dentro un at non sarebbe male.
vabbè, speriamo che passi qualcuno più informato di me a darti una mano.
ps: ma tutto sto sbattimento solo per salvarti un file di log?
pps: ma l'operazione deve avvenire in automatico, senza che l'utente faccia alcuna operazione, o gli si possono implementare un po' di echo [Y/N]? |
|
Top |
|
 |
madvero Amministratore


Registrato: 05/07/05 21:42 Messaggi: 19508 Residenza: Sono brusco con voi solo perchè il tempo è a sfavore. Penso in fretta, quindi parlo in fretta
|
Inviato: 05 Gen 2010 15:36 Oggetto: |
|
|
se proprio sei con l'acqua alla gola, la schifezza emh... il batch che ho scritto sopra... si può estendere ad esempio fino a 60 giorni, e ogni mese butti via tu a mano i primi trenta (ovvero: clicchi su un secondo batch che te li elimina in un colpo solo)...
ok, ok...
passo che è meglio. |
|
Top |
|
 |
skan Eroe


Registrato: 14/12/09 13:34 Messaggi: 61
|
Inviato: 05 Gen 2010 16:47 Oggetto: |
|
|
mmm nel dos almeno nativamente (forse l'XSET) non esiste un controllo sulla data, magari puoi verificare e scrivere la data odierna...cmq come escamotage metti in esecuzione un programma .bat nelle operazione pianificate che parta all'ora che vuoi
Sostanzialmente tra le prime operazioni verifichi (con i comandi di Mad) se esiste
il file 1.txt
il file 2.txt
il file 3.txt
il file 4.txt
il file 5.txt
il file 6.txt
il file 7.txt
se esiste il file 7.txt oppure non esiste nessuno dei suddetti crei il file 1.txt
Con quello inizi la procedura, creando il file 1.txt la volta successiva ti troverà che esiste quindi si tratta del 2° giorno, rinomini il file 1.txt in 2.txt e fai tutto il resto con operazioni di rename, copy etc come ti ha detto sopra mad.
La volta successiva troverai il file 2.txt, lo rinomini in 3.txt e fai le operaizoni per il giorno 3...e via dicendo
non so se sono stato chiaro, ma in sostanza o ti crei una variabile d'ambiente che ti dica se è il giorno 1-2-3 o 7 o come in questo caso ti scrivi un semplice file di testo che ti dice in che giorno ti trovi.
P.s in vbs o js o php faresti molto prima
p.p.s o potresti anche utilizzare un software come Everyday Auto Backup ti fai 7 task uno per giorno e lo fai visualmente |
|
Top |
|
 |
|