Newsgroup: it.comp.os.linux.debian
Titolo: Riniminare File con linux

Ciao a tutti, avrei la necessità di rinominare un file nel seguente
modo:
nomefile --> nomefile_datadelgiorno qualcuno mi sa dare una mano.
Ringrazio anticipatamente Ciao

Marco ha scritto:

mv nomefile --> nomefile_datadelgiorno non è sufficiente ?

markus ha scritto:

Ciao si ma la data del giorno deve essere Es. 07062006
Ciao

 Ciao si ma la data del giorno deve essere Es. 07062006
man date
-- 
Flavio Visentin
Membro del CICAP
Comitato Italiano per il Controllo delle Affermazioni di P4

 Ciao si ma la data del giorno deve essere Es. 07062006
  Ah, allora e' diverso... ;-)
  Prova una cosa del genere:
for i in * ; do DATA=`date +%D | tr -d /` ; mv $i ./$i$DATA ; done
  che ti rinomina TUTTI i file nella directory. Se il file e' unico:
mv pippo pippo`date +%D | tr -d /`
  sempre che il tuo file si chiami pippo... :-)
  Ok cosi'? Un saluto,
-- 
Gianfranco Bertozzi
Linux User #183585
gber...@tiscali.it

 for i in * ; do DATA=`date +%D | tr -d /` ; mv $i ./$i$DATA ; done
dù curiosità:
dove si può leggere come funziona for? Non trovo niante. ...veramente 
non so bene nemmeno cosa è.
eh?
sempre a proposito di rinominare file: capita di dover rinominare, ad 
esmpio, una serie di immagini o di file assegnando loro un numero 
progressivo, c'è un modo rapido?
Manu

Alix wrote:

script in bash suppongo
Valgard, the future
-- 
My Windows is die, fuck you too Bill

 progressivo, c'è un modo rapido?
COUNT=0
for i in *.jpg
do
    COUNT=$(($COUNT+1))
    NEW=$(basename $i .jpg)_$COUNT.jpg
    [ ! -e $NEW ] && mv $i $NEW
done
oppure
man rename


 progressivo, c'è un modo rapido?
  Non credo, probabilmente devi realizzarti uno scriptino apposta. 
Qualcosa del tipo:
NUM=1
for FILE in LISTA           <== LISTA (dei file) la metti tu
do
  mv $FILE $NUM$FILE        <== rinomina il tuo file
  NUM=(expr $NUM + 1)       <== incrementa NUM
done
  Non l'ho provato e non sono un esperto. Se ti cancella l'hard disk
non mi prendo responsabilita', ok? :°)


 non mi prendo responsabilita', ok? :°)
pippo@test:~$ NUM=(expr $NUM + 1)
pippo@test:~$ echo $NUM
expr
Forse allora è meglio se lo provi :-/


 Forse allora è meglio se lo provi :-/
Beh, ha dimenticato un $... ;)
NUM=1
for FILE in LISTA		<== LISTA (dei file) la metti tu
do
	mv $FILE $NUM$FILE	<== rinomina il tuo file
	NUM=$(expr $NUM + 1)	<== incrementa NUM
done
David
-- 
Linux Registered User #334216
Get FireFox! >> 
http://www.spreadfirefox.com/?q=affiliates&id=48183&t=1
Staff >> 
http://www.debianizzati.org
 <<

 Forse allora č meglio se lo provi :-/
  Vabbe', dai... almeno, l'hard disk non gliel'ha cancellato! ;-)
  Saluti,


 > Forse allora è meglio se lo provi :-/


 Vabbe', dai... almeno, l'hard disk non gliel'ha cancellato! ;-)
Non era una critica pesante, ma il problema è che se avesse eseguito
realmente il tuo script, confidente nel fatto che funzionasse, avrebbe
perso i dati di tutti i files tranne il primo.
Ovviamente è stupido chi copia un comando e lo esegue senza prima
accertarsi dell'efficienza, ma il mondo è pieno di gente stupida
(altrimenti non si spiegherebbe la diffusione di virus).
E' sempre buona norma testare quel che si propone o, nel caso non si
abbia voglia/tempo di testare, almeno mettere un echo prima del mv o dei
comandi "pericolosi".
Poi qualche errore può sempre capitare, nessuno è perfetto io per primo,
ma prodigarsi per evitarli è meglio. :-)


 perso i dati di tutti i files tranne il primo.
  Hai perfettamente ragione. La prossima volta giuro che ci sto piu'
attento: scrivo lo scriptino e poi, quando funziona di sicuro, lo
copio e lo incollo direttamentenel messaggio, cosi' son sicuro. Nel
caso particolare avevo preso una cosa simile e l'avevo semplicemente
copiata e adattata "a mano". Per quello era scappato il $.  :°)
  Un saluto e grazie per la critica. Finche' non mi offendi la mamma 
va tutto bene! ;-p
