• User

    Aiuto script bat

    Ciao a tutti, domandina:
    ho dentro una dir tante sottocartelle tutte con il nome in questo formato
    <giorno><mese><anno>
    vorrei convertirle tutte in questo altro formato
    <anno><mese><giorno>
    ad esempio 20_05_2012 diventa 2012_05_20
    Avete percaso idea di come impostare lo script bat da eseguire su cmd?
    pensavo ad un ciclo for e ad utilizzare la funzione *rename
    *
    Grazie da subito per l'aiuto


  • ModSenior

    Un unico livello di cartelle?


  • ModSenior

    Una cosa del genere?
    [PHP]'da usare con ====> cscript mio.vbs
    Set FS = CreateObject("Scripting.FileSystemObject")
    Set objFS = CreateObject("Scripting.FileSystemObject")
    strFolder = "C:\Users\MARCO\Desktop\test"
    Set objFolder = objFS.GetFolder(strFolder)
    Dim pezziCartella
    Dim delimitatore
    Dim parteAnno
    Dim parteMese
    Dim parteGiorno
    Dim stringa
    Dim nuovaCartella
    Dim pathCompletoOrigine
    Dim pathCompletoDestinazione

    delimitatore="-"
    For Each Folder In objFolder.SubFolders
    strFolderName = Folder.Name
    pathCompletoOrigine=strFolder &"" & strFolderName
    pezziCartella=split(strFolderName,delimitatore)
    parteAnno=pezziCartella(2)
    parteMese=pezziCartella(1)
    parteGiorno=pezziCartella(0)
    nuovaCartella=parteAnno & delimitatore & parteMese & delimitatore & parteGiorno
    pathCompletoDestinazione=strFolder &"" & nuovaCartella
    stringa="Trovata cartella : " & pathCompletoOrigine & " giorno=" & parteGiorno & " mese=" & parteMese & " anno=" & parteAnno
    Wscript.Echo stringa
    stringa="Diventerà " & pathCompletoDestinazione
    Wscript.Echo stringa
    Wscript.Echo ""
    FS.MoveFolder pathCompletoOrigine, pathCompletoDestinazione
    Wscript.Echo "Cartella " & pathCompletoOrigine & " modificata in " & pathCompletoDestinazione
    Next
    Wscript.Echo "Modifica terminata"[/PHP]


  • User

    Buon giorno Marco. Intanto ti ringrazio per aver risposto. Tra pensare la soluzione provare ecc un po' di tempo lo avrai speso quindi ancora grazie 😃
    Ho letto la tua proposta e provato : tutto ok! proprio come volevo. Mi interessava una rinomina a un solo livello (per risponderti alla tua domanda). Non avevo pensato ad un vb script pero' vedo che è venuto fuori eppure benino 😃

    Ancora grazie per la risposta, ciao e buona giornata!


  • ModSenior

    All'inizio avevo cercato anche io per il solo linguaggio DOS...
    Poi ho visto che si poteva tramite vb script e visto che lo conoscevo meglio eheh... 😄