[Batch] Move bestanden van ene structuur naar andere

Pagina: 1
Acties:

  • engelbertus
  • Registratie: April 2005
  • Laatst online: 06-03 16:01
hallo ik ehb een simpel vraagje, maar volgens mij kan dit niet met een batchfile

ik wil het volgende graag automatisch laten doen:

move d:\data\werken\2001\01001\*.* d:\data\2001\01001\tekeningen

waarbij het eerste getal( een jaartal dus) en het tweede getal (projectnummers) zeg maar variabel zijn

je voelt het al aankomen het gaat om 2500 projecten en dit met de hand gaan doen is niet echt fantastisch.

daarnaast is het natuurlijk niet voor niets dat ik dit graag wil doen, want hierna moet ik ook nog het zelfde doen voor fotos en berekeningen. dus nog minder fantastisch:
d:\data\foto\2001\01001\*.* d:\data\2001\01001\foto
d:\data\berekening\2001\01001\*.* d:\data\2001\01001\berekening

ik zie even niet hoe ik die jaartallen en projectnummers aan een batchfile kan meegeven, of een batchfile kan maken die zelf die jaartallen of projectnummers kan ophogen.

ik zou kunnen beginnen door te doen
move d:\data\werken\2001\01001\*.* d:\data\werken\2001\01001\tekeningen

en dan gewoon de boom vanaf de jaartallen verplaatsen naar d:\data, en zo ook voor de fotos en berekening, maar dan zit ik steeds met het probleem van de jaartallen en projectnummers.

of is hetd an gewoon mogelijk om bijvoorbeeld
move d:\data\werken\*\*\*.* d:data\*\*\tekeningen\
te doen?

of moet ik het dan per jaartal gaan doen zodat er maar 1 variabele in de naam overblijft?
move d:\data\werken\2001\*\*.* d:\data\2001\*\tekeningen\*.*

bedenk dan wel dat er niet allen bestanden maar ook directories kunnen zitten onder de projectnummers...

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Rfce
  • Registratie: Oktober 2001
  • Laatst online: 26-09-2024

Rfce

Veni, Vidi, Vici

maar een vbscriptje zou ik zeggen.

euh...ja


  • engelbertus
  • Registratie: April 2005
  • Laatst online: 06-03 16:01
ik zat meer te denken aan een scriptje en dacht dat dat bij programeren hoorde, vandaar..

maar een vbscript kan ik zelf niet maken denk ik. en ik begrijp dat het inderdaad niet kan met een batchfile?

  • Rfce
  • Registratie: Oktober 2001
  • Laatst online: 26-09-2024

Rfce

Veni, Vidi, Vici

nou als je een beetje kunt programmeren kun je bestaande scriptjes wel aanpassen, kopie slagen mbv vbscript zijn niet zo ingewikkelt, kijk hier maar eens voor info:
http://msdn2.microsoft.com/en-us/library/aa394594.aspx

Sciptje als vb:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
Set objFSo = CreateObject("Scripting.FileSystemObject")

'let op de "\" op het einde
sSource = "C:\upload\"
sMoveto = "C:\download\"

Set objFolder = objFSO.GetFolder(sSource)
Set colFiles = objFolder.Files

For Each objFile in colFiles
  strOldestFile = objFile.Path
  objFSO.MoveFile strOldestFile, sMoveto
Next

euh...ja


  • engelbertus
  • Registratie: April 2005
  • Laatst online: 06-03 16:01
dat scriptje doet wel iets, maar dat is slechts gelijk aan

move c:\upload\*.* c:\download\*.*

dat voorbeel maakt het dan denk ik eerder ingewikkelder en ik kan nog steeds niet iets verplaatsen van c:\downloaf\files\datum\ naar c:\download\datum\files\

daarvoor moet je dan stukjes uit het pad gaan omwissellen en aanvullen, en dat is met vbscript ook niet eenvoudig "even aan te passen uit bestaande scriptjes" volgens mij.

is wat ik wil dan zo vreemd of zo moeilijk dat het echt niet smpel kan?
Pagina: 1