PDA

Visualizza versione completa : Errore comando COPY in un file .bat


qualcuno
06-06-2009, 18.11.41
Recentemente mi sono interessato a questi tipi di file... e ovviamente ho iniziato a smanettarci un po :D.

Oggi ho riscontrato un errore (penso proprio mio) che non riesco a risolvere:

l'obbiettivo è creare una copia del file prova.bat nel desktop dopo averlo mandato in esecuzione.

Io (aiutandomi con il cmd "copy/?") l'ho impostato cosi:

COPY [Y][/A] C:\Documents and Settings\andrea\Desktop\prova.bat[/A] [+ C:\Documents and Settings\andrea\Desktop\prova.bat[/A] [+ ..]][C:\Documents and Settings\andrea\Desktop [/A]] [/V]
@pause

ho messo @pause per avere il tempo leggere l'errore che mi da che nel mio caso è:

"impossibile trovare il file specificato."

cosa ho sbagliato?

borgata
06-06-2009, 20.19.18
Hai usato le virgolette per definire i percorsi che contengono spazi?

ES:
c:\mia_cartella\miofile.ext ok!
c:\mia cartella\miofile.ext no!
"c:\mia cartella\miofile.ext" ok!

qualcuno
07-06-2009, 01.30.31
ho corretto quell'errore (non avevo pensato agli spazi nella scritta "document and settings")...

pero l'errore me lo da ancora :wall:

borgata
07-06-2009, 10.50.41
allega l'intero script dopo aver zippato il file bat.

qualcuno
07-06-2009, 14.15.09
allega l'intero script dopo aver zippato il file bat.

forse non mi sono spiegato bene :D

nel blocco note ho scritto questa riga salvata in .bat


COPY [Y][/A] "C:\Documents and Settings\andrea\Desktop\prova.bat"[/A] [+ "C:\Documents and Settings\andrea\Desktop\prova.bat"[/A] [+ ..]]["C:\Documents and Settings\andrea\Desktop" [/A]] [/V]

roberto45
07-06-2009, 15.19.09
Domando forse stupida: hai tolto le parentesi quadre dei parametri opzionali?
Da quello che hai inviato si presume che tu voglia copiare più file in uno solo, ne sei sicuro?

borgata
07-06-2009, 15.43.59
ti chiedevo direttamente il file proprio perchè avevo qualche dubbio sul fatto che avessi scritto proprio questo :p
Quando leggi la documentazione di un comando, la parentesi quadra indica un parametro opzionale, ma non va usata nello script.
Inoltre, se non sbaglio, il "copy" non va bene per copie ricorsive, ma potrei sbagliarmi, quindi... allega comunque il file, così semplicemente te lo ripasso corretto! :p

qualcuno
07-06-2009, 20.35.41
ah!!! non lo sapevo!

grazie mille! :D

qualcuno
08-06-2009, 15.23.58
allega l'intero script dopo aver zippato il file bat.

a te ;)

roberto45
08-06-2009, 15.40.48
Se copi un file nella stessa directory devi cambiargli in nome od il suffisso, altrimenti ti da sicuramente errore.
COPY Y /A "C:\Documents and Settings\andrea\Desktop\prova.bat"/A "C:\Documents and Settings\andrea\Desktop\ricopia.bak" /A /V
@pause

borgata
08-06-2009, 17.45.54
mmm... non ho capito bene una cosa, quindi confermami:

- devi copiare un singolo file, ossia prova.bat
- il file si trova già nel desktop, e vuoi farne una copia, sempre sul desktop
(qui mi sembra ci sia già un primo errore... sia il file d'origine che la copia hanno lo stesso nome nello script, dato che non ne specifichi uno differente)
- dici di voler copiare prova.bat dopo averlo mandato in esecuzione: ma non è l'esecuzione di prova.bat che crea la copia?

noto che su alcuni parametri non usi lo slash
se scriviCOPY Y /A "C:\Documen ecc..
per lui il nome del file è Y
Inoltre il parametro /V che utilizzi... non mi risulta un parametro applicabile al comando copy. Per non parlare di tutti quegli /A sparsi per lo script.

Ti allego comunque una copia funzionante, vedi se ti va bene e chiedi se hai dubbi.

qualcuno
10-06-2009, 00.52.33
non riesco a scaricare il tuo allegato :mm:

qualcuno
11-06-2009, 12.51.15
non riesco a scaricare il tuo allegato :mm:

up..

borgata
11-06-2009, 13.19.25
Riprova, magari cambiando browser... io riesco a scaricarlo senza problemi.

CrasHBoneS
30-06-2009, 09.07.14
a me era capitata una cosa analoga, il fatto è che il DOS non digeriva i nomi più lunghi di 8 caratteri, ed ho risolto con:
c:\mia_ca~1\miofile.ext