none
Ajuda script mover pastas, subpastas e arquivos RRS feed

  • Pergunta

  • Boa tarde,

    Tenho uma rotina que salva alguns arquivos na rede, porém preciso mover estes arquivos, pastas e subpastas para um outro local, peguei o script abaixo aqui no fórum e me ajudou bastante, criei um .bat e na .bat informo a origem e destino na pasta, porém só funciona com os arquivos da raiz, gostaria de saber como informar para o script mover não só arquivos, mas também pastas e subpasta (não necessariamente na .bat, pode ser no script).

    On Error Resume Next

      Dim fso, folder, files, sOrigem, sDestino, s_Destino_Org, file

     

      Set fso = CreateObject("Scripting.FileSystemObject")

      sOrigem = Wscript.Arguments.Item(0)

      sDestino = Wscript.Arguments.Item(1)

     

      If sOrigem = "" Then

          Wscript.Echo "Passe o parametro pasta Origem"

          Wscript.Quit

      End If

     

      If sDestino = "" Then

          Wscript.Echo "Passe o parametro pasta Destino"

          Wscript.Quit

      End If

     

      Set NewFile = fso.CreateTextFile(sFolder&"\FileList.txt", True)

      Set folder = fso.GetFolder(sOrigem)

      Set files = folder.Files

     

      For each folderIdx In files

        If not fso.FolderExists(sDestino & "\" & Year(folderIdx.datecreated)) Then

            fso.CreateFolder(sDestino & "\" & Year(folderIdx.datecreated)) 

        End If

     

        If not fso.FolderExists(sDestino & "\" & Year(folderIdx.datecreated) & "\" & Month(folderIdx.datecreated)) Then

           fso.CreateFolder(sDestino & "\" & Year(folderIdx.datecreated) & "\" & Month(folderIdx.datecreated)) 

        End If

     

        If not fso.FolderExists(sDestino & "\" & Year(folderIdx.datecreated) & "\" & Month(folderIdx.datecreated) & "\" & Day(folderIdx.datecreated)) Then

           fso.CreateFolder(sDestino & "\" & Year(folderIdx.datecreated) & "\" & Month(folderIdx.datecreated) & "\" & Day(folderIdx.datecreated)) 

        End If

     

        sDestino_Org = sDestino & "\" & Year(folderIdx.datecreated) & "\" & Month(folderIdx.datecreated) & "\" & Day(folderIdx.datecreated) & "\"

        file = folder & "\" & folderIdx.Name

         fso.CopyFile file, SDestino_Org

         fso.DeleteFile(file)

     

     

      Next

     

    Obrigado.

     

     

    segunda-feira, 19 de dezembro de 2011 18:35

Respostas