[ubuntu-it] Varie: ntp, modificare nomi file, .3gp
Giaipur
giaipur a gmail.com
Gio 24 Nov 2005 10:01:20 GMT
martedì 22 novembre 2005, alle 12:49, An3a ha scritto:
> 2 - c'e' un modo per rinominare in minuscolo dei file con nome ed
> estenzione in maiuscolo? Mi succede ogni volta che mi passano delle
> foto scaricate dalla macchina fotografica ad un pc uindous.
Direttamente dalla Giuda avanzata si scripting Bash:
--8<--cut-here--8<----
#! /bin/bash
#
# Cambia ogni nome di file della directory di lavoro in lettere minuscole.
#
# Ispirato da uno script di John Dubois, che è stato tradotto in Bash da Chet
#+ Ramey e semplificato considerevolmente da Mendel Cooper,
#+ autore del presente libro.
for file in * # Controlla tutti i file della directory.
do
fnome=`basename $file`
n=`echo $fnome | tr A-Z a-z` # Cambia il nome del file in tutte
#+ lettere minuscole.
if [ "$fnome" != "$n" ] # Rinomina solo quei file che non
#+ sono già in minuscolo.
then
mv $fnome $n
fi
done
exit 0
# Il codice che si trova oltre questa riga non viene eseguito a causa
#+ del precedente "exit".
#---------------------------------------------------------------------#
# Se volete eseguirlo, cancellate o commentate le righe precedenti.
# Lo script visto sopra non funziona con nomi di file conteneti spazi
#+ o ritorni a capo.
# Stephane Chazelas, quindi, suggerisce l'alternativa seguente:
for file in * # Non è necessario usare basename, perché "*" non
#+ restituisce i nomi di file contenenti "/".
do n=`echo "$file/" | tr '[:upper:]' '[:lower:]'`
# Notazione POSIX dei set di caratteri.
# È stata aggiunta una barra, in modo che gli
# eventuali ritorni a capo non vengano cancellati
# dalla sostituzione di comando.
# Sostituzione di variabile:
n=${n%/} # Rimuove le barre, aggiunte precedentemente, dal
#+ nome del file.
[[ $file == $n ]] || mv "$file" "$n"
# Verifica se il nome del file è già in minuscolo.
done
exit 0
--8<--end-here---8<---
Ciao
--
Coltivate GNU/Linux, tanto M$-Windows si pianta da solo
More information about the ubuntu-it
mailing list