Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: batch dos

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    17

    batch dos

    ciao a tutti

    devo fare uno script in dos, per windows che faccia le seguenti operazioni:

    - copia di un file in tutte le directory presenti in una dir preinpostata

    il mio problema è che non riesco a trovare info su come fare a recuperare tutte le directory e presumibilmente farci un ciclo sopra che ci copi il file in ognuna di esse...

    Qualcuno può aiutarmi?

    grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Usa il comando xcopy
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    17
    è, ma io non conosco a priori il nome delle directory in cui copiare, conoco solo la directory che contiene queste n directory...

    devo copiare dentro tutte le n cartelle contenute nella cartella Pippo,e conosco solo pippo, le cartelle al suo interno cambiano di nome e numero nel tempo...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    xcopy copia cartelle e sottocartelle ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Forse questo ti può aiutare:

    codice:
    @ECHO OFF
    FOR /F "tokens=*" %%I IN ('DIR /B /AD /S %2') DO COPY %1 %%I\
    Copialo in un file COPIA.BAT e lancialo in questo modo:

    codice:
    COPIA NomeFileDaCopiare DirectoryDestinazione
    NomeFileDaCopiare sarà il nome del file che devi copiare.
    DirectoryDestinazione sarà la directory che contiene le sottodirectory in cui copiare il file.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    17
    mmm non va, mi da:
    La sintassi del comando è incorretta

    se lancio da riga di comando
    FOR /F "tokens=*" %%I IN ('DIR /B /AD /S *run*') DO COPY pippo.txt %%I\
    mi da
    %%I was unexpected at this time.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Ma con il comando xcopy non vuoi proprio provare ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    17
    adesso cerco anche l'xcopy...

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    17
    ragazzi nn riesco a sbloccare la situazione... help me!!!

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da thegiova
    mmm non va, mi da:
    La sintassi del comando è incorretta

    se lancio da riga di comando
    FOR /F "tokens=*" %%I IN ('DIR /B /AD /S *run*') DO COPY pippo.txt %%I\
    mi da
    %%I was unexpected at this time.
    Cosa numero 1: quel codice funziona solo se inserito all'interno di un file BATCH (estensione .BAT) e non lanciato da solo da riga di comando.

    Cosa numero 2: *run* significa "tutte le directory che che contengono run"... quindi, lascia come l'avevo scritto io e se hai bisogno di lanciarlo su più di una directory eseguilo più volte separatamente.

    Cosa numero 3: è necessario che siano abilitate le estensioni per il comando FOR: da WinXP in avanti dovrebbero esserlo di default.

    Io l'ho provato e funziona egregiamente.

    Ho creato nella root una directory "Pippo".
    Al suo interno ho creato 3 directory "01", "02" e "03".

    Lanciato in questo modo, dalla root, funziona perfettamente:
    codice:
    C:\>copia copia.bat Pippo
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.