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

Re: [bash] rimuovere spazi nel nome dei file e delle directory.



In data lunedì 6 giugno 2011 08:25:16, bodrato@mail.dm.unipi.it ha scritto:
> Prendendo dallo script l'idea "find|while read", potresti provare questa:
> 
> find -depth -type d|while read d;do pushd "$d";rename 'y/ /_/' *;popd;done
> 
> ATTENZIONE: non rinomina i file che iniziano con "." (punto)! (puoi
> provare con "* .*" al posto di "*")
> 
> ATTENZIONE! L'applicazione non e` iniettiva: se una dir contiene i tre nomi
> "A B C", "A_B C" e "A B_C"... solo uno di questi potra` essere rinominato.
> 
> ATTENZIONE: per quanto appena detto, la procedura non puo` essere
> reversibile! Se la esegui "all'indietro" con 'y/_/ /', converti in spazi
> anche i caratteri che erano gia` "_" (tratto basso) "prima della cura"!
> 
> ...un carattere decisamente poco usato nei nomi file, soprattutto da
> alcuni altri sistemi operativi, dovrebbe essere ":" (due punti). Ci
> sarebbe anche "\" (barra inversa), ma questa facilmente ti da' dei
> grattacapi anche con bash...
> 
> Ciao,
> m


mi sovviene un dubbio... visto che mv se ne sbatte se esiste già un qualcosa 
con lo stesso nome... potrei se mi trovo nella situazione da te descritta con 
i 3 file, rischierei di sovrascrivere una copia con l'altra?

Byez
-- 
Gollum 1
Tessssssoro, dov'é il mio tesssssssoro...


Reply to: