Script batch – Copia di una cartella via SFTP

| | 6 Comments

Ciao a tutti, tempo fa ho avuto l’esigenza di dover fare dei backup di alcune mie cartelle in ambiente Windows e quindi di copiarle via rete su un altro PC in modo, in caso il mio hard disk decida di dirmi addio, di averne una copia salvata in remoto.

Se il pc su cui salvare i dati è un PC con un sistema operativo Linux, quale cosa migliore di copiare i dati usando il protocollo SFTP.

Ovviamente l’utilizzo di questo protocollo è molto comodo in quanto non dobbiamo installare nessun server FTP o condividere in scrittura cartelle con Samba.
Per fare il tutto in automatico, mi serviva comunque un applicativo da inserire in uno script batch e quindi senza interfaccia grafica e senza interazione con l’utente.
Googleando non ho trovato niente che facesse al caso mio, ho quindi deciso di programmarlo io.
Il software è stato scritto in Java…eh?…sì lo so che per una cosa del genere servirebbe un comodissimo exe invece di un astruso jar da passare alla JVM di turno. Che dire, critica ricevuta ed accettata, ma avendo Eclipse lì che mi guardava e non avendo nessun IDE per lavorare in C#, per esempio, installato sul mio PC, ho cominciato a lavorare in Java e un riga di codice tira l’altra, mi sono trovato con questa piccola applicazione funzionante tra le mani.

Per il momento vi propongo il jar, ma installerò il nostro caro Visual Studio e ricompilerò l’applicazione in un comodo file exe, giurin giuretto.

Ecco il download: cxsftp_v1.0
Il funzionamento è semplice, basta settare i valori nel file di properties e lanciare il jar tramite il comando:

java -jar cxsftp_v1.0.jar file_di_properties

Principali bug

  • Come già detto, il principale difetto di questa applicazione è il fatto che è un’applicazione java. Questo è comunque un problema facilmente sormontabile: chi di noi non ha la jre6 installata nel nostro sistema?
  • Un bug che invece va assolutamente risolto, è il fatto di criptare ke credenziali di accesso contenute nel file di properties

Conclusione

In couclusione, questa è una piccola applicazione è utile e funzionale anche se essendo un prodotto fatto “in casa” e in soli 2 giorni di lavoro non ha le pretese di fare molto di più per cui è stata pensata.

Integrato nel codice c’è il resume sui file, quindi in caso in cui steste usando una wireless anche per spostare diversi giga di dati, superata la prima esecuzione in cui tutti i file devono essere copiati, le successive esecuzioni saranno molto più veloci.

Io lancio il mio “backup batch” ad ogni avvio di windows e ho “in salvo” una decina di giga di dati.

Buon divertimento!

Tags: , , , ,

Category: Windows

About the Author ()