PDA

View Full Version : Script bash per rinominare file cartella...


silealdo
12-04-2012, 10:29
Salve a tutti,
avrei la necessità di realizzare uno script in bash, da lanciare periodicamente, che mi consenta di rinominare molti file di una cartella che hanno un nome del tipo:

XXXX.timestamp.hostname

con un nome che ha invece una struttura del tipo:

YYYY.ZZZZ.TTTT.hostname.timestamp

(dove i vari X Y Z T sono parti fisse)

Qualcuno saprebbe suggerirmi la sintassi giusta per realizzare uno script che possa permettermi di realizzare questa cosa?

Grazie mille anticipatamente. :help:

patel45
13-04-2012, 08:05
per rinominare i file di una cartella puoi usare un script di questo tipo
#!/bin/bash
find cartellaprova -type f | while read i
do
echo $i
b=YYYY.ZZZZ.TTTT.
prima=${i%/*} # estrae la cartella
dopo=${i#*.} # estrae la parte dopo il primo punto
nuovonome=$prima"/"$b$dopo
echo $nuovonome
mv "$i" "$nuovonome"
done

silealdo
16-04-2012, 10:02
Grazie mille!... ora guardo se modificando lo script riesco a fare anche quell'inversione hostname/timestamp che purtroppo è fondamentale... :)