[Soci SLIP] riorganizzare directories
Paolo Craveri
pcraveri a gmail.com
Ven 18 Feb 2011 11:40:31 CET
Grazie!
Il 17 febbraio 2011 19:29, Loredana Lo Conte <llcfree a gmail.com> ha scritto:
> On Thu, 2011-02-17 at 10:26 +0100, Paolo Craveri wrote:
>
>> >> capita che su un pc (dual boot win+linux) sul quale mettono le mani in
>> >> molti si è creato, nella partizione win, un albero di directory simile
>> >> a questo (molto semplficato):
>> >> |-- computi
>> >> |-- comune
>> >> |-- delibere
>> >> |-- lavori
>> >> |-- lettere
>> >> |-- preve
>> >> `-- temp
>> >> |-- computi
>> >> |-- comune
>> >> |-- delibere
>> >> |-- lavori
>> >> |-- lettere
>> >> `-- preve
>> >>
>> >> ho trascurato il terzo livello dell'annidamento per semplicità.
>> >
>> > E ovviamente il numero di livelli e' finito. O no?
>>
>> Non proprio infinito...
>
> Non e' infinito se non ci sono cicli. Basta che non ci siano link
> nella struttura delle cartelle che formino cicli.
>
>> esempio: il file "pippo.odt " è stato modifcato da utenti diversi
>> nella cartella "computi" nei diversi livelli.
>> Rinuncio a cercare di creare un file "pippo.odt" unico che tenga conto
>> delle diverse modifiche. Mi basta il file pippo.odt aggiornato più
>> recentemente.
>> stesso file= stesso nome di file
>
> # mi sono creata questa struttura di test:
>
> mkdir delibere
> mkdir -p temp/delibere
> mkdir -p temp/temp/delibere
>
> # modifico i files (mettici un secondo tra
> # uno e l'altro)
>
> touch delibere/pippo.odt
> touch temp/delibere/pippo.odt
> touch temp/temp/delibere/pippo.odt
>
> touch temp/temp/delibere/paperino.odt
> touch temp/delibere/paperino.odt
> touch delibere/paperino.odt
>
> find . -type f -printf "%f\t%T@\t%h\n" | sort -r -k1,2
questa era la cosa che mi mancava!
>
> # genera:
>
> pippo.odt 1297965995.2991108950 ./temp/temp/delibere
> pippo.odt 1297965984.1271105810 ./temp/delibere
> pippo.odt 1297965975.2751102480 ./delibere
> paperino.odt 1297966025.4751116370 ./delibere
> paperino.odt 1297966014.9271121540 ./temp/delibere
> paperino.odt 1297966003.9871098390 ./temp/temp/delibere
>
> La prima occorrenza di ogni nome di file e' l'ultima modificata,
> la seconda colonna e' la data in cui e' stata modificato il file,
> espressa in secondi a partire dal 1 gennaio 1970 GMT, la terza
> e' la cartella in cui trovi il file modificato per ultimo.
>
> Io salverei l'output in un file (per documentazione) e ci farei
> girare sopra un programmino perl
sono all'ABC del python, provo con il modulo os (os.path, ecc.)
che muove i files da dove sono
> a dove devono andare a finire (solo il primo, salta quelli con
> lo stesso nome).
>
> NOTA: funziona solo con nomi di files decenti (no spazi etc).
> I tuoi lo sono? Se no, bisogna complicarsi la vita, ma non
> di molto.
>
> Loredana
>
>
>
>
>
> _______________________________________________
> Soci mailing list
> Soci a mail.pinerolo.linux.it
> https://liszt.softwareliberopinerolo.org/vecchiamlsoci/
>
Grazie!
--
--
Paolo C.
Maggiori informazioni sulla lista
Soci