[Soci SLIP] riorganizzare directories

Loredana Lo Conte llcfree a gmail.com
Ven 18 Feb 2011 19:45:57 CET


On Fri, 2011-02-18 at 11:40 +0100, Paolo Craveri wrote:
> Grazie!

Figurarsi! Per cosi' poco, giusto una riga :)

> > find . -type f -printf  "%f\t%T@\t%h\n" | sort -r -k1,2
> 
> questa era la cosa che mi mancava!

Anche a me. Mi sono andata a rivedere find per il tuo problema. Ripeto,
funziona solo con una struttura non ciclica e con nomi di files decenti.
Queste due condizioni vanno verificate a parte. GNU find rispetta le
direttive dello standard POSIX e percio' dovrebbe segnalare un errore se
si trova ad attraversare una struttura ciclica anziche' un albero.
L'errore va in stderr, che coincide con stdout, a meno che non ridirigi
l'output in un file (cosi' ti rimane a terminale solo la segnalazione di
errore). Pero' tieni conto che io queste cose le faccio in ambiente
GNU/linux e non windows (i.e., non ho esperienza di possibili problemi
in windows).

Se sai come farti fare una lista ricorsiva dei file in windows, e come
contare automaticamente le righe del file di output, puoi verificare che
coincidano con l'output di:

   find . -type f -printf | wc -l

Sono tutti test "grossolani", ma se qualcosa va storto in genere
bastano. Quando si trattano enormi quantita' di dati, non e' piu'
possibile verificare le cose coem si fa a scuola sui problemini
in cui il test uno lo fa a mano andando a guardare riga per riga se c'e'
quel che dev'esserci.

> sono all'ABC del python, provo con il modulo os (os.path, ecc.)

Qui non ti so aiutare, non per partito preso, ma perche' perl e' 
nato prima di python, mi e' stato utile, quello ho imparato. Pero'
me la sento di darti un consiglio. Per cose di questo tipo, e' meglio
non usare i moduli, bastano poche righe di codice, sia in perl che in
python.

Stasera non ho tempo, ma se vuoi mandarmi (solo a me) l'output del
comando:
  find . -type f -printf  "%f\t%T@\t%h\n" | sort -r -k1,2 > to_llc.txt
nel weekend ti scrivo come farei io in perl (il file mi serve per
testare che funzioni).

Loredana





Maggiori informazioni sulla lista Soci