Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
* Rinominare file multipli
Nuovo argomento   Rispondi    Indice del forum -> Software - generale
Precedente :: Successivo  
Autore Messaggio
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 14:13    Oggetto: Rispondi citando

Ho seguito il tuo consiglio. Anche stavolta lanciato da Windows non si sono prodotti effetti, mentre lanciato da riga di comando, pur non producendosi risultati, se ne è resa palese l'esecuzione. Ti riporto il contenuto della finestra:

Microsoft Windows XP [Versione 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Admin>cd desktop

C:\Documents and Settings\Admin\Desktop>cd nuova cartella

C:\Documents and Settings\Admin\Desktop\Nuova cartella>rinomina

C:\Documents and Settings\Admin\Desktop\Nuova cartella>SET INDICE=1

C:\Documents and Settings\Admin\Desktop\Nuova cartella>SET NUOVOINDICE=001

C:\Documents and Settings\Admin\Desktop\Nuova cartella>SET NUOVOINDICE=1

C:\Documents and Settings\Admin\Desktop\Nuova cartella>REN FILE1 .* FILE1 .*

Sintassi del comando errata.

C:\Documents and Settings\Admin\Desktop\Nuova cartella>if 1 NEQ 0 GOTO FINE

C:\Documents and Settings\Admin\Desktop\Nuova cartella>
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 17 Giu 2005 15:48    Oggetto: Rispondi citando

E' palese che fallisce questa riga:

Codice:
SET NUOVOINDICE=%NUOVOINDICE:~-3%


che

controlla che sia %NUOVOINDICE:(carattere:TILDE)(carattere:MENO)3%

oppure...

forse prova a sostituire la riga sopra con

Codice:
SET NUOVOINDICE=X00%INDICE%


così capisce che è una stringa e non un numero...
Top
Profilo Invia messaggio privato HomePage
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 17:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 17 Giu 2005 16:44    Oggetto: Re: Rinominare file multipli Rispondi citando

fdd ha scritto:

Da ciò ne risulta un errare dell'ordinamento dei file medesimi utilizzando viewer come ACDSee. Per questo vorrei rinominarli di modo che avessero tutti la stessa lunghezza. In questo modo:
file001.zzz ---- file999.zzz

Molti programmi hannola caratteristica di ordinare i nomi dei fiel tenendo conto di questi problemini "numerici".
(In molti casi si può configurare il programma se dbba farlo o ordinarli secondo un ordine alfabetico "puro")





fdd ha scritto:
Quindi devo prima selezionare tutte le unità (andandole a cerca una ad una) e rinominarle file00#, poi seleziono le decine e le rinomino file0##, le centinaia rimangono immutate. Io cercheri quindi un programmino (se c'è) che indicatogli la cartella e selezionate le opportune opzioni faccia tutto da solo.


Ma se selezioni (anche) le unità (cioè con nomi tipo file1.jpg , file2.jpg) e li rinomini come file0## , il programma come si comporta?
Prova. Magari capisce da solo, e aggiunge lo 0 (anche perché altriemnti cosa metterebbe al posto del # più a sinistra?)
In quel caso potresti semplicemente selezionare tutti i file (a prescindere se saino quelli da te chiamati "unità" o "decine") e rinominarli tutti assieme.

EDIT: un po' come ti ha detto ioSOLOio (mess. del 16 Giu 2005 14:52) per IrfanView




horus ha scritto:
Citazione:
utility che permetta di farlo in modo automatico (cioè non dovendo selezionare prima quelli ad una cifra, poi quelli a due e così via)?

Non avevo letto bene la domanda, effettivamente anche con acdsee il vecchio ordinamento va a perdersi in favore di quello nuovo.


scusa horus, cosa intendi?
cosa sono il "vecchio ordinamento" e il "nuovo"?
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 16:57    Oggetto: Rispondi citando

SverX ha scritto:
E' palese che fallisce questa riga:
Codice:
SET NUOVOINDICE=%NUOVOINDICE:~-3%

che controlla che sia %NUOVOINDICE:(carattere:TILDE)(carattere:MENO)3%

Ho controllato: va bene.
SverX ha scritto:
oppure...
forse prova a sostituire la riga sopra con
Codice:
SET NUOVOINDICE=X00%INDICE%

così capisce che è una stringa e non un numero...

L'ho fatto, ma l'esito è simile:

Microsoft Windows XP [Versione 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\Admin>f:
F:\>cd 1
F:\1>rinomina
F:\1>SET INDICE=1
F:\1>SET NUOVOINDICE=X001
F:\1>SET NUOVOINDICE=1
F:\1>REN FILE1 .* FILE1 .*
Sintassi del comando errata.
F:\1>if 1 NEQ 0 GOTO FINE
F:\1>
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 17:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 17 Giu 2005 17:24    Oggetto: Rispondi citando

SverX ha scritto:
SET NUOVOINDICE=%NUOVOINDICE:~-3%
Piccolo file BATCH se hai Windows 2K/XP...


Ah, ecco ....
perché ero (un po') "esperto" di file batch quando avevo il computer con DOS 5 (e poi 6) , ma di poter fare cose del genere non me l'ero mai sognato.
(non so neppure cosa significhi ":~-3" dentro il nome di una variabile d'ambiente)





fdd ha scritto:
Prima di tutto grazie per l'aiuto. Ho provato ad utilizzarlo, ma mi da "Sintassi del comando errata".


a che riga?

In dos 6 avevano introdotto la possibilità di eseguire un file batch passo a a passo
command /Y /C <nome_del_file_batch>

Ma ho guardato nell'help dell'interprete a riga di comando di winXP ( cmd /? da riga di comando , command /? non dà messaggi di help) e mi sembra che l'abbiano tolto
(te pareva ... una volta che fanno qualcosa di buono Confused )


Fai così. Per eseguire il batch passo a passo Metti delle righe
Codice:
PAUSE

Il programma s'interromperà chiedendoti di premere un tasto.
Magari metti prima una riga
ECHO eseguita riga .....

Per esempio ... , anzi no. Ti scrivo direttamente tuto il batch (spero che SverX consenta che io parta dal suo codice)
Dio del codice) :

Codice:
REM commento versione modificata per facilitare il debug
REM autore originario SverX , a cui va tutto il merito

SET INDICE=1
ECHO eseguita riga 1
PAUSE

:CICLO
SET NUOVOINDICE=00%INDICE%
ECHO eseguita riga 2
PAUSE

SET NUOVOINDICE=%NUOVOINDICE:~-3%
ECHO eseguita riga 3
PAUSE

REN FILE%INDICE%.* FILE%NUOVOINDICE%.*
if %ERRORLEVEL% NEQ 0 GOTO FINE
ECHO eseguita riga 4
PAUSE

SET /A INDICE=%INDICE% + 1
ECHO eseguita riga 5
PAUSE

ECHO ora INDICE vale %INDICE%
ECHO ripeto il ciclo.
ECHO.
GOTO CICLO

:FINE



e vedi dove ti si pianta
(non è il massimo un debug del genere per un progrmama con un ciclo così, ma presumo a te si pianti già al primo giro.)


(nota1: "ECHO." serve per fare una riga vuota
nota 2: non ho separato la riga con "if errolevel ... " perché mi sa che altrimenti non funzionerebbe)





fdd ha scritto:
, se sono sotto Windows non accade nulla

in che senso
Con winXP devi essere per forza sotto Windows (non puoi caricare solo il "dos" senza windows).

fdd ha scritto:
se sono alla riga di comando,

Ma certo che lo devi lanciare da riga di comando ("Start > tutti i programmi > accessori > Prompt dei comandi " . Imboscarlo un po' di più no, eh? Confused ). Perlomeno le prime volte per vedere se funziona.

Poi potrai anche associarlo ad un'icona e lanciarlo da win
(ti si apre una finestra a riga di comando , che però si chiude subito appena finito il programma. Forse c'è il modo di dire a win di lasciarla aperta, e poi la chiudi tu a mano)




p.s. per SverX
SverX ha scritto:
Codice:
REN FILE%INDICE%.* FILE%NUOVOINDICE%.*
if %ERRORLEVEL% NEQ 0 GOTO FINE


Ma così basta che manchi un file
(cioè file19.jpg ... file20.jpg ... file21.jpg ... file23.jpg ... file 24.jpg
Manca file22.jpg e il progamma esce)

Ma mi sa che l'unica altra possibilità è usare un "for" (che nei batch è molto rozzo, quindi è un macello usarlo!).
c'era anche il comando shift , ma ora non mel o ricordo più bene (forse era sui %1 , %2 , .... ecc.)
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 17:42    Oggetto: Re: Rinominare file multipli Rispondi citando

chemicalbit ha scritto:
Molti programmi hannola caratteristica di ordinare i nomi dei fiel tenendo conto di questi problemini "numerici".
(In molti casi si può configurare il programma se dbba farlo o ordinarli secondo un ordine alfabetico "puro")

Sicuramente è così. Infatti il Windows li ordina correttamente, ma la sua funzione per rinominare file multipli utilizza comunque solo 1 cifra per i primi nove file, 2 per i successivi 90 e così via. A me d'altra parte interessa l'ACDSee che non ordina correttamente (se non rinominando)
chemicalbit ha scritto:

fdd ha scritto:
Quindi devo prima selezionare tutte le unità (andandole a cerca una ad una) e rinominarle file00#, poi seleziono le decine e le rinomino file0##, le centinaia rimangono immutate. Io cercheri quindi un programmino (se c'è) che indicatogli la cartella e selezionate le opportune opzioni faccia tutto da solo.

Ma se selezioni (anche) le unità (cioè con nomi tipo file1.jpg , file2.jpg) e li rinomini come file0## , il programma come si comporta?
Prova. Magari capisce da solo, e aggiunge lo 0 (anche perché altriemnti cosa metterebbe al posto del # più a sinistra?)
In quel caso potresti semplicemente selezionare tutti i file (a prescindere se saino quelli da te chiamati "unità" o "decine") e rinominarli tutti assieme.

Non andrebbe bene, in quanto essendo i file in ordine errato, dopo li avrei si rinominati tutti con numero a tre cifre, ma non sarebbero nell'ordine corretto.
chemicalbit ha scritto:

horus ha scritto:
Citazione:
utility che permetta di farlo in modo automatico (cioè non dovendo selezionare prima quelli ad una cifra, poi quelli a due e così via)?

Non avevo letto bene la domanda, effettivamente anche con acdsee il vecchio ordinamento va a perdersi in favore di quello nuovo.

scusa horus, cosa intendi?
cosa sono il "vecchio ordinamento" e il "nuovo"?

Si riferisce proprio al fatto che se li rinominassi così come stanno, dopo mi ritroverei con un diverso ordinamento dei file
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 17:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 17 Giu 2005 18:07    Oggetto: Re: Rinominare file multipli Rispondi citando

fdd ha scritto:
Sicuramente è così. Infatti il Windows li ordina correttamente,

Sì, una volta mentre guardavo la guida di windows XD ero finito per caso in una paginache spiegava come attivare/disattivare questa caratteristica.
Ora per curiosità sto facendo ricerche da 20 minuti nella guida , ma non lo trovo Brick wall
fdd ha scritto:
Non andrebbe bene, in quanto essendo i file in ordine errato, dopo li avrei si rinominati tutti con numero a tre cifre, ma non sarebbero nell'ordine corretto.


Ah, perché # viene sostituito da un numero progressivo ...
Io pensavo che funzionasse come * e ? in dos, cioè lasciasse quelli che c'erano nel nome precedente

(il che farebbe sì che se tu hai un "buco" nell'ordine dei file di partenza, te lo ritrovi anche in quello d'arrivo. Ma i file sono comunque ordinabili per nome, se a te non dà fastidio il "buco")

Quella rinominazione fatta con ACDsee non accetta i "*" o i "?" ?



SverX ha scritto:
E' palese che fallisce questa riga:

Codice:
SET NUOVOINDICE=%NUOVOINDICE:~-3%


Ho letto l'help di SET ( SET / ? ) per la riga di comando di WinXP e dovrebbe essere giusto.

C'è anche l'esempio
Citazione:
Se uno dei numeri(offset o lunghezza) è negativo, il numero utilizzato è il valore della lunghezza della variabile di ambiente sommato all'offset o lunghezza specificati.

%PATH:~-10%

estrae gli ultimi 10 caratteri della variabile PATH.


Che è proprio pari pari al nostro caso. (è sottintesa una lunghezza "da quel punto alla fine del valore della variabile)
Mistero ... bisognerà chiedere a Bill Gates Twisted Evil

L'unica cosa che mi viene in mente è tentare di specificare anche la lunghezza:
Codice:
SET NUOVOINDICE=%NUOVOINDICE:~-3,0%

cioè "parti dal terzultimo carattere e prendine 3".
Top
Profilo Invia messaggio privato
The_Noise
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 27/04/05 15:35
Messaggi: 103

MessaggioInviato: 17 Giu 2005 18:21    Oggetto: Rispondi citando

Ecco una soluzione multipiattaforma alla rinominazione che si vuole ottenere:

Codice:
# numero totale di cifre
$n = 5;

while (<*.zzz>) {
    /([^0-9]*)([0-9]+)(.*)/;
    rename $_ , $1 . "0"x($n - length($2)) . $2 . $3;
}


il codice è perl. Basta quindi installare perl per eseguire lo script su qualsiasi SO.

Per gli utenti linux basta inserire come prima linea:
Codice:
#!/usr/bin/perl

per poterlo eseguire come un normale script di shell.

Spiegazione:
1. prende tutti i file della cartella corrente che terminano in zzz (se non si vogliono selezionare i file in base all'estensione basta scrivere <*> al posto di <*.zzz>

2. divide il nome in 3 parti: parte iniziale, blocco di cifre, parte finale

3. rinomina il file inserendo un numero di zeri prima del blocco di cifre pari al numero di cifre che mancano per arrivare a $n (che in questo caso è 5 ma si può modificare a piacimento)

Buona Giornata Wink
~ The Noise
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 18:42    Oggetto: Rispondi citando

Intanto grazie anche a te per il tempo che stai perdendo per me.
chemicalbit ha scritto:

fdd ha scritto:
Prima di tutto grazie per l'aiuto. Ho provato ad utilizzarlo, ma mi da "Sintassi del comando errata".

a che riga?

In effetti l'ho scritto sopra:
fdd ha scritto:
Microsoft Windows XP [Versione 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\Admin>f:
F:\>cd 1
F:\1>rinomina
F:\1>SET INDICE=1
F:\1>SET NUOVOINDICE=X001
F:\1>SET NUOVOINDICE=1
F:\1>REN FILE1 .* FILE1 .*
Sintassi del comando errata.
F:\1>if 1 NEQ 0 GOTO FINE
F:\1>

chemicalbit ha scritto:
fdd ha scritto:
, se sono sotto Windows non accade nulla
in che senso
Con winXP devi essere per forza sotto Windows (non puoi caricare solo il "dos" senza windows)

Intendevo, se faccio doppio clic sul file, utilizzando l'interfaccia grafica del Windows.
chemicalbit ha scritto:
fdd ha scritto:
se sono alla riga di comando,

Ma certo che lo devi lanciare da riga di comando

In realtà credo che un file batch esegua il suo contenuto correttamente sia da riga di comando, sia facendo doppio clic su di esso.
chemicalbit ha scritto:
("Start > tutti i programmi > accessori > Prompt dei comandi " . Imboscarlo un po' di più no, eh? Confused )

Trovo più pratico Start>Esegui>cmd
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 17:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 17 Giu 2005 18:46    Oggetto: Rispondi citando

fdd ha scritto:
In realtà credo che un file batch esegua il suo contenuto correttamente sia da riga di comando, sia facendo doppio clic su di esso.

Sì, apre una finestra di 2prompt dei comandi", ma la chiude subito appena finito.
Se ti serve vedere bene l'output (come adesso chidevi controlalre se funzioni bene) ti conviene aprire prima un prompt dei comandi e poi lanciarlo da lì.
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 18:56    Oggetto: Re: Rinominare file multipli Rispondi citando

chemicalbit ha scritto:
fdd ha scritto:
Non andrebbe bene, in quanto essendo i file in ordine errato, dopo li avrei si rinominati tutti con numero a tre cifre, ma non sarebbero nell'ordine corretto.

Ah, perché # viene sostituito da un numero progressivo ...
Io pensavo che funzionasse come * e ? in dos, cioè lasciasse quelli che c'erano nel nome precedente (il che farebbe sì che se tu hai un "buco" nell'ordine dei file di partenza, te lo ritrovi anche in quello d'arrivo. Ma i file sono comunque ordinabili per nome, se a te non dà fastidio il "buco")

In realtà non è un problema di buchi, anzi rinominandoli i buchi scompaiono (cioè si spostano alla fine dell'ordinamento), il problema è che si altera l'ordinamento dei file. Cerco di spiegarmi meglio:
Se ho 1, 10, 11, 2, 3
dopo ho 1, 2, 3, 4, 5
cioè il file 10 ora è chiamato 2, mentre il 3 che sarebbe il terzo diviene ultimo (e questo perchè l'ACDSee li rinomina a partire dal loro ordinamento iniziale non dal loro nome). Certo si potrebbe obiettare che l'ACDSee già vede il file 3 come ultimo, quindi nulla cambia a formalizzare ciò cambiandogli nome in 5, ma in realtà poi dopo non è più possibile risalire all'ordinamento corretto.
chemicalbit ha scritto:
Quella rinominazione fatta con ACDsee non accetta i "*" o i "?" ?

No, solo i # al posto dei numeri
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 17 Giu 2005 19:04    Oggetto: Rispondi citando

The_Noise ha scritto:
Basta quindi installare perl per eseguire lo script su qualsiasi SO.

Purtroppo sono un po' all'asciutto sull'argomento. Non è che potresti guidarmi passo passo?
Sono arrivato a questa pagina link, dove però mi trovo un po' spiazzato quando dice:
Citazione:
Once you download the gzip or zip archive, you will have to extract the source code files from the distribution and then follow the instructions on how to compile the source code for your system. If you don't have a compiler, or are unclear about compiling source code, then look first for a binary distribution of Perl.

Grazie.
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 17:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 17 Giu 2005 20:10    Oggetto: Rispondi citando

fdd ha scritto:
, dove però mi trovo un po' spiazzato quando dice:
Citazione:
Once you download the gzip or zip archive, you will have to extract the source code files from the distribution and then follow the instructions on how to compile the source code for your system.


Per forza che sei spiazzato:
tu usi WinXP (dove si usano SOLO programmi specifici per winXP, o al limite per i win precedenti).

Quello descrito lì è invece (uno dei ) modi per il "mondo" Unix (GNU/Linux, ecc.) :

viene distribuito il codice sorgente (cioè quello che il programmatore ha scritto,) che è uguale (al limite di qualche agiustamento) per qualsiasi computer.
Dopo di che chi lo vuole instalalre lo comipla ottenendo un programma (un .exe , per dirla alla dos/Windows) che va bene sul suo computer

Presumo che però a te convenga:

fdd ha scritto:
Citazione:
If you don't have a compiler, or are unclear about compiling source code, then look first for a binary distribution of Perl.


cioè scaricati la distribuzione con i binari (gli eseguibili) già compilati per un computer con cpu intel o compatible e s.o. = winXP , come faresti per qualunque altro programma winXP


http://www.perl.com/download.csp#win32


Di più non so dire perché non conosco questo programma nello specifico.
Top
Profilo Invia messaggio privato
The_Noise
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 27/04/05 15:35
Messaggi: 103

MessaggioInviato: 18 Giu 2005 11:19    Oggetto: Rispondi citando

quoto chemicalbit

Non ho mai installato perl su piattaforme win32 perchè ho conosciuto il linguaggio quando ormai ero completamente passato a GNU/Linux.

Non so se ci sia un metodo di installazione automatizzato da sorgenti per windows... quindi presumibilmente la via più semplice è installare un precompilato, un binario bello e pronto cioè.

Da una veloce sbirciata mi sembra che sia questa la via più indicata:

http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl#

(puoi raggiungere questa pagina dal link di chemicalbit con pochi click)

le due versioni che ci sono per windows presumo siano l'archivio (semplicemente da copiare dove vuoi) o il file autoinstallante.

Una volta che l'eseguibile perl sia presente nel tuo sistema, basta aprire un terminale, entrare nella caretella con i file da rinominare e scrivere:

Codice:
perl nomescript


dove nomescript è il file in cui hai salvato lo script. Se il file contentente lo script è in una cartella diversa, basta indicare il suo nome col percorso completo (es: c:\windows\nomescript).

ciau!
Top
Profilo Invia messaggio privato
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 19 Giu 2005 00:09    Oggetto: Rispondi citando

Grazie, ci proverò.
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 20 Giu 2005 08:45    Oggetto: Rispondi citando

Come odio quando non funziona correttamente il CMD perchè tra Win2K e WinXP hanno deciso di modificare una *cavolatina* ...

Ok, proviamo ancora. Sostituisci

Codice:
SET NUOVOINDICE=X00%INDICE%


con

Codice:
SET NUOVOINDICE=A00%INDICE%


così -spero- almeno stavolta non dovrebbe credere che X stia ad indicare un numero esadecimale...
Top
Profilo Invia messaggio privato HomePage
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 20 Giu 2005 10:08    Oggetto: Rispondi citando

SverX ha scritto:
Codice:
SET NUOVOINDICE=A00%INDICE%


Ancora nessun esito:

F:\Programmi\1>rinomina
F:\Programmi\1>SET INDICE=1
F:\Programmi\1>SET NUOVOINDICE=A001
F:\Programmi\1>SET NUOVOINDICE=1
F:\Programmi\1>REN FILE1 .* FILE1 .*
Sintassi del comando errata.
F:\Programmi\1>if 1 NEQ 0 GOTO FINE
F:\Programmi\1>

Tra l'altro non ho ancora avuto il tempo di provare la soluzione proposta da The_Noise, anche se devo ammettere che un piccolo file batch sarebbe più comodo.
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 20 Giu 2005 10:16    Oggetto: Rispondi citando

Ultimo tentativo, stavolta evitiamo che la variabile contenga _solo_ cifre usando .* direttamente nella variabile...

Codice:
SET INDICE=1

:CICLO
SET NUOVOINDICE=00%INDICE%.*
SET NUOVOINDICE=%NUOVOINDICE:~-5%

REN FILE%INDICE%.* FILE%NUOVOINDICE%
if %ERRORLEVEL% NEQ 0 GOTO FINE

SET /A INDICE=%INDICE% + 1
GOTO CICLO

:FINE


adesso prendiamo gli ultimi 5 caratteri di NUOVOINDICE così se tutto va bene dovrebbero essere 001.* poi 002.* etc e lo usiamo nella REN così come è...

... e odio XP, l'ho già detto?


(occhio che ho modificato 3 righe... le 2 SET e la REN)
Top
Profilo Invia messaggio privato HomePage
fdd
Dio maturo
Dio maturo


Registrato: 22/04/05 00:33
Messaggi: 1734
Residenza: Giusto dietro l'angolo

MessaggioInviato: 20 Giu 2005 10:41    Oggetto: Rispondi citando

Mi sento in imbarazzo per tutto il tempo che ti sto facendo perdere, ma neanche questa volta è andata bene:

F:\Programmi\1>rinomina
F:\Programmi\1>SET INDICE=1
F:\Programmi\1>SET NUOVOINDICE=001 .*
F:\Programmi\1>SET NUOVOINDICE=1 .*
F:\Programmi\1>REN FILE1 .* FILE1 .*
Sintassi del comando errata.
F:\Programmi\1>if 1 NEQ 0 GOTO FINE
F:\Programmi\1>
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 20 Giu 2005 10:49    Oggetto: Rispondi

MAPPORC Shocked

1 - non sentirti in imbarazzo
2 - tempo ne ho

3 - _TOGLI_ lo spazio dopo

Codice:
SET INDICE=1


e forse siamo a posto Smile
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Software - generale Tutti i fusi orari sono GMT + 1 ora
Vai a Precedente  1, 2, 3  Successivo
Pagina 2 di 3

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi