Archivi tag: batch

Script *.bat per il backup automatico via FTP della directory “Documenti”

Chi è del mestiere sa che i backup sono di fondamentale importanza, soprattutto quando riguardano dati piuttosto sensibili. Affidare tale operazione agli utenti (anche se si tratta di piccoli ambienti) è sconsigliabile. Ho dunque pensato di creare il seguente scrip (per reti SOHO) che “zippa” la directory Documenti e la invia, tramite FTP, ad un server interno.

batch

Ovviamente tale scrip può essere ulteriormente migliorato, se avete dei suggerimenti contattatemi.

Ecco il codice:

set mese=%DATE:~3,2%
set giorno=%DATE:~0,2%
set anno=%DATE:~-4%
set comfile="com.txt"

zip Documenti_PC1_%giorno%_%mese%_%anno% "C:UsersnomeutenteDocuments"
cd "C:Usersvostroutente"

echo username> %comfile%
echo password>> %comfile%
echo put Documenti_PC1_%giorno%_%mese%_%anno%.zip>> %comfile%
echo quit>> %comfile%

ftp -i -s:"com.txt" <indirizzo IP server>

Lo scrip, da posizionare nella directory di ciascun utente, scrive i dati per la connessione al server FTP ed i relativi comandi su un file, che ho chiamato com.txt. Tale informazioni vengono infine date in pasto al comando ftp, da utilizzarsi con le flag -i (per non visualizzare i prompt interattivi) e -s (che consente di specificare il file sorgente dei comandi). Ovviamente anche il file com.txt deve trovarsi all’interno della directory utente.

Per la precisione, il file com.txt ci apparirà nel modo seguente:

username
password
put Documenti_PC1_29_09_2011.zip
quit

Ora, la realtà nella quale tale scrip dovrà lavorare è caratterizzata dalla presenza di un solo utente per PC, quindi è stato piuttosto semplice gestire i vari backup. Per ambienti un pò più complessi dovranno essere apportate sicuramente delle modifiche al codice.

Fatene buon uso.

A presto.

PS: per “zippare” la directory ho utilizzato la suite gratuita Info-ZIP, il cui file zip.exe è stato copiato nella dir di ciascun utente.