PDA

View Full Version : ...un aiuto per comando Batch di copia


Virtra
11-09-2014, 18:51
ciao a tutti gli utenti del forum, stò cercando di capire che comando batch usare per copiare due file uguali ma usando la modalità "mantieni entrambi i file", tipo quando si copiano da windows 2 file uguali e ti viene proposta la scelta di mantenerli entrambi

esempio:
ho il file "PIPPO.EXE" nella directory A

...e copiandone un'altro con lo stesso nome dalla directory B, vorrei ottenere che in A abbia questi due file:

PIPPO.EXE
PIPPO.EXE (2)

ho tentato invano con i comandi copy e move ma senza successo... :muro:

qualcuno mi può dare un suggerimento? :)

x_Master_x
12-09-2014, 10:11
Esempio:

: x_Master_x
@ECHO OFF
setlocal enabledelayedexpansion

Set Origine=C:\Cartella\Origine
Set Dest=C:\Cartella\Destinazione
Set /A N=0

FOR /R """%Origine%""" %%G in (*.*) DO (
IF EXIST "%Dest%\%%~nxG" (
Set /A N+=1
COPY "%%G" "%Dest%\%%~nG(!N!)%%~xG"
) ELSE (
COPY "%%G" "%Dest%\%%~nxG"
)
)

Virtra
12-09-2014, 12:17
Grazie x_Master_x! Più che un suggerimento è la soluzione! E pensare che credevo si potesse fare con comando singolo, (avevo pensato... forse Robocopy?!?) ero fuoristrada. Grazie ai tuoi interventi colgo l'occasione per approfondire quello che scrivi (ad esempio l'EnableDelayedExpansion) che dovrò capire cosa serve.

Un saluto e buona giornata