[XP] Batch file om te Zoeken en Verwijderen

Pagina: 1
Acties:
  • 366 views sinds 30-01-2008
  • Reageer

  • F-Tim
  • Registratie: November 2003
  • Laatst online: 13-04 21:48
Hey allemaal,

ik zit met het volgende "probleem", ik wil een batch bestandje maken (of een Script), eentje waarmee ik geautomatiseerd bestanden (afbeeldingen, tekstdocumenten) kan zoeken en de gevonde bestanden weg kan gooien. Dit echter wel met een twist. Ik wil dat het batchbestandje ná het weggooien van de bestanden zichzelf weggooit.

Nu heb ik voor het laatste deel hier op GoT al iets gevonden, en ook hoe dit te doen is zonder een foutmelding. Door het om te zetten naar een Com bestand. Nu blijf ik dus alleen nog met het zoeken en het verwijderen zitten. Als ik nl. Find in de commandline gebruik, kan ik niets vinden met XP, dus óf ik gebruik de verkeerde syntax, of ik moet een ander commando hebben.

Bovenop dit bestand komt een batch file welke kopieën maakt van bestanden, en welke dan het "verwijder" batch filetje kopieert naar de dir van de kopieën. Dit wil ik nl. doen zodat m'n broertje foto's en filmpjes en documenten in een map kan zetten (een gemounte netwerk map op mijn pc) en ik ze dan kan verzamelen, en als de map groot genoeg is kan branden. Maar omdat ik het maar irritant vind om telkens uit te moeten zoeken welke bestanden nu het nieuwste zijn, wil ik dus gewoon de bestanden naar de netwerkmap kopieren, het verwijderbestandje op de originele plek terugzetten (welke via de taakplanner wordt aangeroepen), en de originele directory leegmaken. Zodat de volgende keer weer gewoon de nieuwe inhoud naar de netwerk map gekopieerd wordt. Op deze manier staan op de netwerkmap dus altijd alle bestanden, en op de pc van m'n broertje altijd alleen maar de nieuwste. Ik wil juist dat het middels de "backup" batchfile wordt aangeroepen, omdat m'n broertje dan alleen maar 1x in de zoveel tijd dat bestandje aan te roepen, en alle data veilig stelt. Het backup-en moet dus niet dagelijks, maar alleen als m'n broertje zelf het bestand aanroept. Dit omdat hij dan tijd heeft om bestanden te wijzigen voordat ze in definitieve versie op een cd/dvd gebrand worden.

nu had ik zelf iets als volgt in gedachten, verbeter me waar ik de fout in ga:
code:
1
2
3
4
@ECHO OFF
find /i "plaatjeX.jpg" >NULL
<< Hierin moet ik de bestanden die door de find opdracht gevonden zijn verwijderen>>
del verwijder.bat


Het find commando laat me mét of zónder ">NULL" echter constant een knipperende cursor zien.
Indien iemand van mening is dat het beter op een andere manier kan, laat het me dan weten.

Wanna play?


  • assembler
  • Registratie: Mei 2004
  • Niet online
Ik zou inplaats van find, dir /s gebruiken

Find zoekt namelijk naar bepaalde tekst in bestanden, als je "dir /s *.jpg" doet, zoek hij alle bestanden die op .jpg eindigen

[ Voor 62% gewijzigd door assembler op 23-02-2005 19:03 ]


Verwijderd

Ik wil dat het batchbestandje ná het weggooien van de bestanden zichzelf weggooit.
niet mogelijk. het bestand is in use dus dat gaat niet lukken... (zowieso zie ik het nut niet... je kan de batch van elke willekeurige lokatie laten draaien en elke dir meepakken die je wilt.)

enne, verbeteren waar je misgaat? je hebt nog niks...

[ Voor 38% gewijzigd door Verwijderd op 23-02-2005 19:12 ]


  • F-Tim
  • Registratie: November 2003
  • Laatst online: 13-04 21:48
Oke, de aangepaste code wordt dan dus als volgt:

code:
1
2
3
4
@ECHO OFF
dir /s *.jpg (al dan niet met >null)
----
del verwijder.bat


Bovendien is het wél mogelijk dat het bestand zichzelf verwijdert, zie de volgende post er maar op na:
Verwijderd in "Hoe maak ik een batch bestand die..."
Als ik het trouwens hier probeer, dan geeft de batch file geen foutmelding aan hoor? Hij verwijdert zichzelf prima

Op regel 3 moet ik dan nu nog zien uit te vinden hoe ik de gevonden bestanden met de dir /s opdracht kan verwijderen.... in ieder geval al heel erg bedankt _assembler_

is het mogelijk om de volgende constructie te maken?
code:
1
del dir /s *.jpg >null

Edit:
Ja dus :D dat betekent dus dat het verwijder batch filetje heeeeel kort te maken is! Wat nu dus gedaan is! Bedankt _assembler_ dat was de missende schakel die ik zocht :D

[ Voor 59% gewijzigd door F-Tim op 23-02-2005 19:54 ]

Wanna play?


  • Zoetjuh
  • Registratie: Oktober 2001
  • Laatst online: 10-01-2024
Tipje: maak er "nul" van en niet "null". Dit laatste creëert namelijk het bestand null

PS. Het volgende zou moeten werken voor het verwijderen:

code:
1
2
cd \
del *.jpg /s > nul

[ Voor 113% gewijzigd door Zoetjuh op 23-02-2005 21:55 ]


  • F-Tim
  • Registratie: November 2003
  • Laatst online: 13-04 21:48
ik was er al achter gekomen met nul met 1 L +), ik kreeg idd dat bestandje null, heb ook nog nill geprobeerd, en bij nul met 1 L werkte die idd perfect. Het verwijderen kon idd nog korter :D dat wist ik helemaal niet!

cd\ kan ik echter niet gebruiken, deze zorgt ervoor dat ie vanaf de root gaat scannen, en aangezien dat de C is lijkt me dat niet zo'n strak plan met Windows :P

Ook jij heel erg bedankt zoetjuh! :D

Wanna play?


  • F-Tim
  • Registratie: November 2003
  • Laatst online: 13-04 21:48
Ohjah, en dit is de gehele code, superkort, en prima werkend!:
code:
1
2
3
@ECHO OFF
del *.jpg /s >nul
del verwijder.bat /s >nul

Wanna play?

Pagina: 1