[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: scorrere ricorsivamente directory



* -> 14:34:52 (Sunday 30 July 2006)
* -> "fabio nigi" wrote:

> data una directory superiore e N directory sottostanti, che contengono
> tipi di file diversi, passare a procmail (soltanto) tutti i file mailbox
> (che sono contenuti nelle N sottocartelle).
> 
> detto in parole povere stò migrando da thunderbird a mutt e devo
> spostare tutte le mail di thunderbird (che sono sparse in
> .mozilla-thunderbird a seconda dell account o della dir) in Mail
> facendole processare da procmail.
> 
> i file mailbox sono tanti e farlo  a mano ci perdo un pomeriggio..
> 
> qualcuno mi da una mano a scrivere un mezzo script?che non mi viene
> proprio in mente!

Certo, potrebbe uscir fuori qualcosa di interessante.

Non ho capito alcune cose pero', dunque, correggimi se sbaglio,
hai tot directory e tot file, presumo quindi che con thunderbird
utilizzi mailboxes di tipo _maildir_, giusto ?

Con mutt continueresti ad utilizzare _maildir_ o vorresti passare a
_mbox_ ? Ritengo sia importante considerare questa opzione per capire come
muoversi.

Non conosco thunderbird quindi non ho esperienza in merito, so
solo che se il client fosse stato sylpheed-claws la conversione
sarebbe stata indolore.

Ad ogni modo, questo e' un primo aspetto, casomai verifica se
thunderbird comprende talune funzionalita' atte alla conversione
del tipo di mailbox, qualora ce le avesse risolveresti in un sol
colpo, poi con procmail smisti nelle varie mailboxes.

Detto questo, non ho capito perche' processare le mail con
procmail, suppongo che stiamo parlando del tuo archivio quindi
presumo che le varie mail siano gia', come dire, ben archiviate,
nel senso di ordinate per mezzo di directory (maildir) o file e
directory (mbox); correggimi se sbaglio.

Casomai, probabilmente, ti converrebbe prima ordinare l'archivio e
in un secondo momento definire i filtri con procmail per la
gestione della nuova posta.

Mi muoverei con una serie di cicli e verifica di condizioni:
	
for i in CERCA_IN_QUESTA_DIR
do
	if [ -d $i ]
	then
		[1]
		mkdir NUOVA_DIR
		mv DA A
		fi
	done
done

L'ho buttata li' come idea.

[1] nella prima condizione potresti inserire un ulteriore ciclo con 
la verifica di talune condizioni, che ne so, if la lista e'
debian@italian muovi qua', if la lista e' pinco@pallino muovi qua'.

Agire sui file e non sulle directory con un :
DEBIAN="^To: debian-italian@lists.debian.org"
PROVA=`cat  DIR/file | grep "$DEBIAN"`

E ciclare, questo mi e' venuto in mente; lo vedrei piu' come un
array pero', nel senso di inserire tot regole per ogni elemento
dell'array e, secondo la verifica, creare la dir e spostare i
file.

Se non ho capito, chiedo venia :)

-- 
luca



Reply to: