Repository 32bit  Forum
Repository 64bit  Wiki

Rinominare file

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata e la versione del Kernel. Questi dati aiutano le persone che possono rispondere.
2) Specificare sempre il tipo di shell (bash, sh, csh, etc...)
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza dell'ultima regola porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Rinominare file

Messaggioda Vic Steele » sab nov 13, 2010 11:38

Salve a tutti.
Ho bisogno di un metodo per rinominare automaticamente tanti file in un determinato modo. Ovvero, vorrei semplicemente che dato un set di file con questi nomi:

file.1.txt
file.numero.2.jpg
file.con.nome.molto.lungo.avi


questi vengano rinominati sostituendo gli spazi ai punti, ad eccezione dell'ultimo punto (che è quello dell'estensione):

file 1.txt
file numero 2.jpg
file con nome molto lungo.avi


Ho intenzione di fare uno script che agisca localmente mettendo mano nella directory in cui è eseguito. Semmai dovessi arrivarci prima di voi posterò il mio risultato. Nel frattempo, qualcuno che ha sicuramente più esperienza di me ha già qualche idea o soluzione?
Vic Steele
Linux 2.6
Linux 2.6
 
Messaggi: 532
Iscritto il: dom apr 27, 2008 13:46
Località: Potenza
Nome Cognome: Luigi Caiazza
Slackware: current x86_64
Kernel: 3.0.0
Desktop: Fluxbox / KDE 4.7.0
Distribuzione: Fedora 15

Re: Rinominare file

Messaggioda 414N » sab nov 13, 2010 12:01

Codice: Seleziona tutto
for FILE in *
do
      SUFFIX=`echo "$FILE" | rev | cut -d. -f1 | rev`
      NEWFILE="`basename "$FILE" .$SUFFIX | tr . ' '`"
      mv "$FILE" "$NEWFILE.$SUFFIX"
done
Avatar utente
414N
Iper Master
Iper Master
 
Messaggi: 2845
Iscritto il: mer feb 13, 2008 17:19
Località: Bulagna
Slackware: 14.0 (x64)
Kernel: 3.2.29
Desktop: LXDE

Re: Rinominare file

Messaggioda Mario Vanoni » sab nov 13, 2010 16:18

Se vuoi un metodo interattivo
http://freshmeat.net/projects/renameutils/
lo uso da oltre 10 anni con nvi(1),
il pregio, cambi in i nomi come ti pare.
Mario Vanoni
Iper Master
Iper Master
 
Messaggi: 3174
Iscritto il: lun set 03, 2007 21:20
Località: Cuasso al Monte (VA)
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey

Re: Rinominare file

Messaggioda ulisse89 » sab nov 13, 2010 17:48

Lo script che ti hanno passato è molto più giusto in questa situazione, ma nel caso avessi altri problemi simili esiste un programma che si occupa di rinominare in massa dei file.
http://www.infinicode.org/code/pyrenamer/
Avatar utente
ulisse89
Packager
Packager
 
Messaggi: 644
Iscritto il: sab gen 17, 2009 13:53
Località: Bologna
Nome Cognome: Riccardo
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: Xfce

Re: Rinominare file

Messaggioda Vic Steele » mar nov 16, 2010 9:48

Ottimo script e ottimi consigli.
Grazie a tutti e tre!
Vic Steele
Linux 2.6
Linux 2.6
 
Messaggi: 532
Iscritto il: dom apr 27, 2008 13:46
Località: Potenza
Nome Cognome: Luigi Caiazza
Slackware: current x86_64
Kernel: 3.0.0
Desktop: Fluxbox / KDE 4.7.0
Distribuzione: Fedora 15


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti