FANDOM


Script che rendono minuscoli tutti i nomi dei file contenuti in $DIR

Soluzione per bash Modifica

$ for FILE in $DIR/* ; do mv "$FILE" "`echo $FILE | \
tr '[:upper:]' '[:lower:]'`" ; done

Commento Modifica

for FILE in $DIR/* 
do
  mv "$FILE" "`echo $FILE | tr '[:upper:]' '[:lower:]'`"
done

La conversione da maiuscolo a minuscolo viene effettuata dal comando

tr '[:upper:]' '[:lower:]'

sul nome del file; l'output viene poi usato come agomento del comando mv tramite gli apici rovesciati ` `.

Variante: solo file Modifica

Se si vogliono rendere minuscoli solo i nomi dei file regolari, e non ad esempio le directory, si può aggiungere un test come

for FILE in $DIR/* ;  do if [ -f $FILE ] ; then \
mv "$FILE" "`echo $FILE | tr '[:upper:]' '[:lower:]'`" ; fi ; done

ovvero, in modo più comodo da leggere

for FILE in $DIR/* 
do
  if [ -f $FILE ]
  then
    mv "$FILE" "`echo $FILE | tr '[:upper:]' '[:lower:]'`"
  fi
done

Soluzione bash alternativa Modifica

In questo modo si effettua la modifica solo dei file regolari, e non ad esempio delle directory.

Se ci si vuole fermare (non scendere troppo nella gerarchia di directory) e' necessario usare GNU find, e l'opzione -maxdepth .

(da verificare)

$ for i in `find $DIR -type f`; do mv ${i} "`dirname ${i}`/`basename ${i}|tr '[:upper:]' '[:lower:]'`" ; done

Soluzione con rename(1) Modifica

$ rename ’y/A-Z/a-z/’ $DIR/*

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Inoltre su FANDOM

Wiki casuale