Toon posts:

Directory structuur

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey,
Kan ik een hele directory structuur kopieren, maar dan alleen de mappen + bestandsnamen. Dus dat alle files er wel staan, maar 0 kB zijn?

Heb al ff gezocht. Krijg veel dir >naam.txt. En ook robocopy zoals ergens genoemd wordt heeft deze functie niet. Niet wat ik zoek dus.

Iemand 'n idee?

  • EXX
  • Registratie: Juni 2001
  • Laatst online: 25-08 23:09

EXX

EXtended eXchange

DIR /B /S >naam.txt soms?

For it is the doom of men that they forget...           Huidige en vroegere hardware specs         The Z80 is still alive!


Verwijderd

Topicstarter
Neej, ik wil 't dus niet naar een text bestand :)

Om maar 's een voorbeeld te noemen
C:\Test\blaat1.doc (40kB)
C:\Test\blaat2.doc (35kB)
C:\Test\Test2\blaat3.doc (140kB)
C:\Test\Test2\blaat4.doc (334kB)

Hoe krijg ik dit makkelijk naar:
D:\Test\blaat1.doc (0kB)
D:\Test\blaat2.doc (0kB)
D:\Test\Test2\blaat3.doc (0kB)
D:\Test\Test2\blaat4.doc (0kB)

Puur de structuur + namen van de files. Verder niks

  • 4VAlien
  • Registratie: November 2000
  • Laatst online: 02-08 23:13

4VAlien

Intarweb!

Onder linux met ls, mkdir en touch is het makkelijk, als je een touch equivalent kan vinden voor windows moet het toch makkelijk te scripten zijn denk ik. Sterker nog dat bestaat bij elke windows van de NT familie al in de shell.


met dir /s /b /AD krijg je een directory list en met dir /s /b /A-D krijg je alleen files. Mijn kennis van batch files is niet zo goed dat ik weet of dat te doen is met batch files, maar in bijvoorbeeld quickbasic is dit snel te doen. (Het maken van een nieuwe tree dus)

[ Voor 39% gewijzigd door 4VAlien op 19-11-2003 16:29 ]


Verwijderd

Maak een file in de trant van:

C:\Test\blaat1.doc (40kB)
C:\Test\blaat2.doc (35kB)
C:\Test\Test2\blaat3.doc (140kB)
C:\Test\Test2\blaat4.doc (334kB)

en replace met UltraEdit ' (*kB)' naar ''. Uiteraard zonder de ' en ' :) Je krijgt dan:

C:\Test\blaat1.doc
C:\Test\blaat2.doc
C:\Test\Test2\blaat3.doc
C:\Test\Test2\blaat4.doc

Wil je wel (0kB) erachter, replace dan met ' (0kB)' ipv '' :)

[ Voor 30% gewijzigd door Verwijderd op 19-11-2003 16:29 ]


  • EXX
  • Registratie: Juni 2001
  • Laatst online: 25-08 23:09

EXX

EXtended eXchange

Hmm, dat is niet zo simpel. Met XCOPY /T/E kun je de complete directorystructuur dupliceren, maar dan heb je geen files, alleen de boom.

For it is the doom of men that they forget...           Huidige en vroegere hardware specs         The Z80 is still alive!


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB/AI

Front verplichte underscores

EXX schreef op 19 november 2003 @ 16:30:
Hmm, dat is niet zo simpel. Met XCOPY /T/E kun je de complete directorystructuur dupliceren, maar dan heb je geen files, alleen de boom.
Dat plus touch.exe en bovenstaande lijst en je bent er V!s is er :)

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Verwijderd

Topicstarter
Hmm... en hoe gaat dat touch dan in z'n werk? (Vis is nog ff niet klaar :))

  • Sluuut
  • Registratie: Februari 2003
  • Laatst online: 04-09 16:09
Misschien een mogelijkheid om je hele FAT uit te lezen en deze in 1 bestand te zetten?

57696520646974206c65657374206973206e657264


Verwijderd

Topicstarter
Hmm.. misschien moet ik ff wat vollediger zijn.

't Gaat er dus om dat de directory gewoon de bestanden bevat, maar dat ze 0kB groot zijn. Dus als je bijvoorbeeld een directory met als je MP3's op de C hebt staan, en ze backupped naar de D, maar dan moet de grootte van al die files 0 zijn.


Heb WindowsXP btw ;)

  • nowell
  • Registratie: Februari 2003
  • Laatst online: 24-03-2024

nowell

Que Pasa!?

Oke, laat ik ook eens een gooi naar de oplossing doen.

Zoals ik het begrijp wil je dus bestanden kopieren, maar dan alleen de bestandsnaam en dan zonder "de inhoud".

Is de oplossing dan niet gewoon snelkoppelingen maken??
(of ben ik nou gek) 8)7

  • G33rt
  • Registratie: Februari 2002
  • Laatst online: 22-06-2022
nowell schreef op 19 november 2003 @ 17:01:
Is de oplossing dan niet gewoon snelkoppelingen maken??
(of ben ik nou gek) 8)7
ja, alleen hoe doe je dat nou voor een serie bestanden vanaf de prompt, dat is de vraag. shortcuts zetten als je 1000 bestanden oid hebt is niet leuk :)

Verwijderd

Topicstarter
Idd, snelkopping gaat de goede kant op. Alleen krijg je dus overal .lnk erachter, en 't gaat om veel files ;-)

@F_J_K, van je verhaal zonet volg ik weinig meer :P

  • EXX
  • Registratie: Juni 2001
  • Laatst online: 25-08 23:09

EXX

EXtended eXchange

Dit heb je waarschijnlijk nodig: XXCOPY

Een soort van super XCOPY. Daarin kun je volgende switch aangeven:
/CLONE/TR0 Create directory tree + 0-length files only.

For it is the doom of men that they forget...           Huidige en vroegere hardware specs         The Z80 is still alive!


  • 4VAlien
  • Registratie: November 2000
  • Laatst online: 02-08 23:13

4VAlien

Intarweb!

Plan:

batch file die als argument mee moet krijgen waar de nieuwe links gemaakt moeten worden.

code:
1
2
3
dir /s /b /AD >c:\dirs.log
dir /s /b /A-D>c:\files.log
wscript d:\dev\linker.script %1


script file:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Set objShell = WScript.CreateObject("WScript.Shell")

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("C:\dirs.log")
If objFile.Size > 0 Then
Do Until objFile.AtEndOfStream
    strLine = objFile.ReadLine
    Wscript.Echo strLine
    objShell.run("mkdir "+strLine)
Loop
objFile.Close
Else
    Wscript.Echo "The file is empty."
End If


Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("C:\files.log")
If objFile.Size > 0 Then
Do Until objFile.AtEndOfStream
    strLine = objFile.ReadLine
    Wscript.Echo strLine
    objShell.run("touch "+strLine)
Loop
objFile.Close
Else
    Wscript.Echo "The file is empty."
End If


Uiteraard moet het argument met de bestemming hier nog geparsed worden. Maar ja ik gebruik normaal ms-dos 3.1 compatible batch files dus dit heb ik zo uit wat tutorials aan elkaar gedraaid. Er is vast iemand die dit kan verfraaien en afmaken.

Verwijderd

Topicstarter
Thanks, but.. Ik heb al mooi proggie gevonden. Doet precies wat ik wilde ;)

Dus.. als iemand 't nog eens nodig heeft: empty mirror.exe _/-\o_

  • EXX
  • Registratie: Juni 2001
  • Laatst online: 25-08 23:09

EXX

EXtended eXchange

Als die niet goed werkt kan je alsnog XXCOPY proberen. Dat biedt ook heel veel mogelijkheden (veel meer als het normale XCOPY) en kan dus ook datgene wat jij nodig hebt.

For it is the doom of men that they forget...           Huidige en vroegere hardware specs         The Z80 is still alive!


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Verwijderd schreef op 19 november 2003 @ 16:28:
Maak een file in de trant van:

C:\Test\blaat1.doc (40kB)
C:\Test\blaat2.doc (35kB)
C:\Test\Test2\blaat3.doc (140kB)
C:\Test\Test2\blaat4.doc (334kB)

en replace met UltraEdit ' (*kB)' naar ''. Uiteraard zonder de ' en ' :) Je krijgt dan:

C:\Test\blaat1.doc
C:\Test\blaat2.doc
C:\Test\Test2\blaat3.doc
C:\Test\Test2\blaat4.doc

Wil je wel (0kB) erachter, replace dan met ' (0kB)' ipv '' :)
haha.. en nu de topicstart nog eens lezen ;)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate

Pagina: 1