[Primipassi] SH
HDD
accadidi@katamail.com
Lun 3 Giu 2002 21:56:57 CEST
ciao Francesco i file mi sono arrivati tutti e 2....ma non capisco come
mai non riesco a vedere i miei post.....grazie cmq...!
Ma torniamo al problema iniziale.....nel frattanto mi sono arrotolato le
maniche e sono riuscito a fare qualcosina....ma ho bisogno di un aiuto
per perfezionare questi script (d'altra parte non posso sperare di
conoscere da subito tutti i comandi :))))
ricapitoliamo il problema....un miliardo di file sparsi per l'hard disk
e la necessita' di ordinarli.
qui sotto lo script che ho scritto....unico problemino : tenta di
spostarmi file gia' spostati...che ovviamente non trova.
+ o meno fuziona cosi:
presupponiamo di avere in una cartella i seguenti file:
pippo.125.tga
pippo.127.tga
elwood.258.iff
elwood.268.iff
aaiw.005.jpg
aaiw.007.jpg
lcarrol.248.gif
lcarrol.249.gif
gli faccio listare la dir e metto il valore in $file
per ogni oggetto trovato crea una cartella con [estensione]_nomefile
tipo: [tga]_pippo
e sposta dentro tutti i file che si chiamano pippo*.tga
e qui sta il problema ....quando lista i file , sono presenti TUTTI ma
al secondo giro del for....sono gia' stati spostati e la dir gia' esiste
e quindi mi da un errore per ogni file che non trova.....non che non
vada....solo che mi fa "sporco" e sicuramente lo rallenta.
##############################################################################
#!/bin/sh
#oim Ordina IMmagini uso ./oim dir
file=`ls $1`
#inizia il ciclo for
for s in $file
do
#prende l'estensione , il nome e crea il nome della dir
extension=${s##*.}
filename=${s%.*.*}
dirname=$1"/""["$extension"]_"$filename
#crea la directory
mkdir $dirname
#muove i file dentro la directory
mv $1"/"$filename*.$extension $dirname
done
ls
###############################################################################
qui invece un altro scriptino , magari solo da aggiustare......per
ripulire le dir dai file tmp (mi occupano 1.6 Mb l'uno e ne ho a decine)
###################################################################################
#!/bin/sh
#DELTEMP pulisce le cartelle dai file tmp uso ./deltemp dir
folder=$1
deltmp=`find $folder |grep _tmp`
rm $deltmp
####################################################################################
chiunque abbia voglia di darci un occhio.... GRAZIE!
Lorenzo.
Maggiori informazioni sulla lista
primipassi