Hai sbagliato diverse cose:
1) se il batch deve copiare
se stesso e dentro c'è scritto "copy spegni.bat" il file in cui hai scritto questo comando si deve chiamare spegni.bat, altrimenti è chiaro che non si trova
2) il percorso è scritto male: %HOMEDRIVE% equivale a scrivere "C:\" (e se infatti lo incolli in Start > Esegui e dai invio si apre C:\) mentre %homepath% corrisponde a "C:\Documents and Settings\utente_attuale".
Anzi, ora che ci penso è inutile che scrivi %HOMEDRIVE%%homepath% basta solo %homepath%. Ma siccome devi spostarti ancora di una cartella, cioè "Documenti" il percorso diventa "%homepath%\Documenti\"
Quindi la riga va corretta così:
- Codice: Seleziona tutto
@echo off
for %%a in (1 2) do copy spegni.bat "%homepath%\Documenti\"
pause > nul
3) non possono esistere due file con lo stesso nome nella stessa cartella. Quindi il primo passaggio di ciclo prende il file file e lo copia Documenti, e il secondo fa la stessa cosa sovrascrivendo il primo file dato che si chiamano allo stesso modo.
Quanti file avrai se copi 100 volte uno stesso file in una stessa cartella? Sempre e solo 1 se hanno lo stesso nome