Home Sito Majorana ---- Cerca nel Forum con Google ---- Privacy Policy

Rispondi 
 
Valutazione discussione:
  • 0 voti - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
[RISOLTO] programmino per fare copie di archivi
19-07-2012, 15:20 (Questo messaggio è stato modificato l'ultima volta il: 19-07-2012 23:28 da Antonio_Cantaro.)
Messaggio: #1
[RISOLTO] programmino per fare copie di archivi
Buongiorno a tutto il forum, avrei la necessità di creare o usare del codice per copiare in automatico molti file con estensioni diverse all'interno di un applicativo windows su wine (c:\) in modo da salvare gli archivi e quindi poterli recuperare in caso di guasto. In windows lo facevo con un bat file e quindi linguaggio dos, in ubuntu come faccio? Esempio: all'interno di un'applicazione ci sono file-archivio di tipo .db .px .gh0 e .mod.
Ora copiando questi file li posso recuperare facendo l'azione inversa.
Grazie mille e cordiali saluti
Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
19-07-2012, 18:32 (Questo messaggio è stato modificato l'ultima volta il: 19-07-2012 19:20 da zafran.)
Messaggio: #2
RE: programmino per fare copie di archivi
Non è molto chiaro.

L'applicativo è un .exe che tu usi con wine in linux.
Questo applicativo usa degli archivi (.zip?).
Vuoi fare dei backup di questi .zip.
Quindi i casi sono due:
1- a fare i backup è l'applicativo stesso e quindi si appoggia a wine
2- l'applicativo non c'entra proprio più nulla e allora quello che farai sarà uno script (tipo il tuo .bat), che verrà eseguito dal sistema, scritto in bash e con estensione .sh. Potresti farlo in perl o python ma bash mi sembra la cosa più semplice.

Se tutto questo è giusto, possiamo provare a scriverlo insieme (se non è troppo complicato) e quindi sposto la discussione nella sezione della shell.

Prova a mandare il .bat che così lo prendiamo a modello.

[Immagine: tux_guitux.png] Parole !
Mai che se ne trovino due uguali !
Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
19-07-2012, 20:55
Messaggio: #3
RE: programmino per fare copie di archivi
Allora... per spiegare meglio, io sviluppo programmi gestionali usando motori database di tipo foxpro, ibm db2, lotus approach ecc. per windows. Ora uno di questi gestionali l'ho installato su ubuntu con wine e tutto funziona egregiamente. Il problema sorge dal momento in cui devo salvare i file db e loro indicizzazioni e modelli, che poi contengono solo i dati che vengono gestiti dall'applicazione principale, per poterli mettere al sicuro. Esempio: il file gestionale si chiama "principale.apr" che gestisce il file di dati db "dati.dbf" e il file indice "dati.adx". Ora fin quando i file di dati sono solo due, la cosa è semplice, ma quando i db sono 30 o 40 e magari con altri tipi di estensioni, la cosa diventa più complicata. Da come la vedo io, il codice dovrebbe isolare i file dati, quindi cercarli, magari con una funzione di tipo "find" e copiarli in una cartella diversa. Viceversa ripristinare il tutto sulla cartella del gestionale. Spero di essere stato chiaro.

Un file bat potrebbe essere il seguente:
copy c:\gestionale\*.dbf c:\copiagestionale
copy c:\gestionale\*.adx c:\copiagestionale

viceversa:
copy /y c:\copiagestionale\*.* c:\gestionale

Naturalmente il gestionale in questione si trova nella cartella nascosta di wine .wine
Cordiali saluti e grazie mille
Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
19-07-2012, 21:49 (Questo messaggio è stato modificato l'ultima volta il: 19-07-2012 21:59 da zafran.)
Messaggio: #4
RE: programmino per fare copie di archivi
Qualcosa così dovrebbe essere la traduzione quasi esatta (non so cosa sia -y per copy).
Per funzionare, il file va reso eseguibile.
Codice:
#!/bin/bash

gestionale="/percorso/della/dir/del/gestionale/"
copiagestionale="/percorso/della/dir/dei/backup/"

cp -a $gestionale/*.dbf $copiagestionale
cp -a $gestionale/*.adx $copiagestionale
Ho messo l'opzione -a al comando cp per mantenere eventuali permessi.

Potrebbe essere interessante annotare i risultati dell'operazione in un file di log o anche lanciare il backup regolarmente ogni tot di tempo.

Il find conviene usarlo per file di cui non si sa proprio nulla del percorso.
Nel caso siano raggruppati in una o poco più dir adiacenti, tanto vale usare la tua sintassi: /percorso/comune/*.dbf.

Non so quanto ne sai, quindi scusa le banalità:
percorso di .wine : ~/.wine
percorso assoluto : comincia con /
percorso relativo : ../ indica la directory superiore

[Immagine: tux_guitux.png] Parole !
Mai che se ne trovino due uguali !
Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
19-07-2012, 22:21 (Questo messaggio è stato modificato l'ultima volta il: 19-07-2012 22:23 da max57.)
Messaggio: #5
RE: [Risolto] programmino per fare copie di archivi
Ok... Grazie mille, ho capito tutto, è molto simile al bat.
Funziona alla grande.
Cordiali saluti
Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
19-07-2012, 23:31
Messaggio: #6
RE: [RISOLTO] programmino per fare copie di archivi
Se può essere d'interesse:

http://www.istitutomajorana.it/index.php...&Itemid=33

Informatica: libero bene dell'umanità
[Immagine: informatica_libera.png]
http://www.istitutomajorana.it
Visita il sito web di questo utente Trova tutti i messaggi di questo utente
Cita questo messaggio nella tua risposta
Rispondi 


Vai al forum:


Utente(i) che stanno guardando questa discussione: 1 Ospite(i)

Contattaci | Sito Majorana | Torna all'inizio della pagina | Torna al contenuto | Modalità archivio | RSS Syndication