Supponiamo ad esempio di dover rinominare tutti i file
*.ps in *.eps. Come possiamo fare? Una soluzione e' utilizzare
la riga comando
# for i in *.ps; do mv $i $(basename $i .ps).eps; done
oppure utilizzare lo script
for file in *.ps; do
mv $file ${file%.ps}.eps
done
Ma esiste un comando molto piu' veloce e sicuro:
mmv (Multiple Move)
che serve a spostare/copiare/appendere/linkare file multipli,
e che possano essere raggruppati con un wildcard (carattere
jolly). Questa azione viene effettuata in modo sicuro, ovvero
non ci sono cancellazioni di file inaspettate dovute a collisioni
dei nomi dei file di destinazione con nomi di file gia'
esistenti. Inoltre non ci sono problemi nel caso in cui
i nomi dei file contengano spazi.
La sintassi e'
# mmv 'foo*bar?' 'pinco#1pallino#2'
che significa che verranno rinominati tutti i file contenenti
le stringe "foo", "bar" e terminanti
con un carattere e verra' dato il nome "pinco"
+ cio' che l'asterisco trova + "pallino" + ciò
che il punto di domanda trova. L'azione di sopra diventa
ora:
# mmv '*.ps' '#1.eps'
verranno quindi rinominati tutti i file da PostScript (.ps)
a encapsuled PostScript (.eps).
Per maggiori informazioni man mmv
|