Toon posts:

[2000] Batch scriptje file selecteren*

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een scriptje om het nieuweste bestand te selecteren
en dit vervolgens te kopieren naar een andere directory.
alleen heb ik geen idee wat er fout gaat in het onderstaande script.
er komt geen output in mijn deploy# directory
heef iemand een idee?

for /F %i IN ("dir C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log /b /od") do set FILENAME=%i

copy %FILENAME% e:\deploy#

het besturingssysteem is windows 2000

[ Voor 7% gewijzigd door Verwijderd op 28-12-2005 00:15 ]


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

Spider.007

* Tetragrammaton

Doe inplaats van
code:
1
copy %FILENAME% e:\deploy#
eens
code:
1
echo copy %FILENAME% e:\deploy#
en kijk eens wat er dan precies gebeurt; en of dat is wat je wilt? :)

---
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


  • Nielson
  • Registratie: Juni 2001
  • Laatst online: 07:22
Draai je deze regel om te testen ook in een batch-file ? Anders denk even aan het volgende :
Als u de opdracht FOR in een batchprogramma wilt gebruiken, moet u
%%variable opgeven in plaats van %variable. Variabele-namen maken
onderscheid tussen hoofd- en kleine letters, dus %i is iets anders dan %I.

[ Voor 69% gewijzigd door Nielson op 28-12-2005 00:26 ]


Verwijderd

Topicstarter
Spider.007 schreef op woensdag 28 december 2005 @ 00:17:
Doe inplaats van
code:
1
copy %FILENAME% e:\deploy#
eens
code:
1
echo copy %FILENAME% e:\deploy#
en kijk eens wat er dan precies gebeurt; en of dat is wat je wilt? :)
er wordt nog niets gekopieerd
als ik het in de promt uitvoer dan komt eruit dat filename=dir wordt.

[ Voor 11% gewijzigd door Verwijderd op 28-12-2005 00:26 ]


Verwijderd

Topicstarter
Nielson schreef op woensdag 28 december 2005 @ 00:23:
Draai je deze regel om te testen ook in een batch-file ? Anders denk even aan het volgende :
[...]
Klopt daar heb ik aan gedacht.

  • Nielson
  • Registratie: Juni 2001
  • Laatst online: 07:22
code:
1
"dir C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log /b /od"
Als je alleen dit gedeelte van de code uitvoerd, geeft dat wel de gewenste output ? Heb namelijk het idee dat je aanhalingstekens niet helemaal fijn staan.

Verwijderd

Topicstarter
Nielson schreef op woensdag 28 december 2005 @ 00:31:
code:
1
"dir C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log /b /od"
Als je alleen dit gedeelte van de code uitvoerd, geeft dat wel de gewenste output ? Heb namelijk het idee dat je aanhalingstekens niet helemaal fijn staan.
owjah daar had ik niet aan gedacht.
dit gaat inderdaad fout

Verwijderd

Topicstarter
Verwijderd schreef op woensdag 28 december 2005 @ 00:10:
Ik ben bezig met een scriptje om het nieuweste bestand te selecteren
en dit vervolgens te kopieren naar een andere directory.
alleen heb ik geen idee wat er fout gaat in het onderstaande script.
er komt geen output in mijn deploy# directory
heef iemand een idee?

for /F %i IN ("dir C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log /b /od") do set FILENAME=%i

copy %FILENAME% e:\deploy#

het besturingssysteem is windows 2000
ik heb de regel nu aangepast naar:

for /F %i IN (dir "C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log /b /od") do set FILENAME=%i
echo copy %FILENAME% e:\deploy#

ik krijg als melding kan het bestand dir niet vinden.

  • Nielson
  • Registratie: Juni 2001
  • Laatst online: 07:22
code:
1
for /F %i IN ('dir "C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log" /b /od') do set FILENAME=%i

Probeer deze eens.

Verwijderd

Topicstarter
Nielson schreef op woensdag 28 december 2005 @ 00:38:
code:
1
for /F %i IN ('dir "C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\*.log" /b /od') do set FILENAME=%i

Probeer deze eens.
Nu kan ie het bestand wel vinden. alleen als ik deze laat kopieren.
schrijft ie niks weg naar de directory

[ Voor 10% gewijzigd door Verwijderd op 28-12-2005 00:51 ]


  • Nielson
  • Registratie: Juni 2001
  • Laatst online: 07:22
Als je die dir-opdracht doet krijg je alleen de naam van een bestand terug, als je vervolgens in je batch COPY %FILENAME% doet ontbreekt het pad naar dit bestand.

Verwijderd

Topicstarter
Spider.007 schreef op woensdag 28 december 2005 @ 00:17:
Doe inplaats van
code:
1
copy %FILENAME% e:\deploy#
eens
code:
1
echo copy %FILENAME% e:\deploy#
en kijk eens wat er dan precies gebeurt; en of dat is wat je wilt? :)
met die echo wordt het script niet gekopieerd naar de directory.
het is net alsof het bestand niet kan worden weggeschreven.

Verwijderd

Topicstarter
Nielson schreef op woensdag 28 december 2005 @ 01:01:
Als je die dir-opdracht doet krijg je alleen de naam van een bestand terug, als je vervolgens in je batch COPY %FILENAME% doet ontbreekt het pad naar dit bestand.
sorry dat ik het vraag nielson maar hoe kan ik het bestand dan kopieren?
waar moet ik het pad dan aangeven?

[ Voor 6% gewijzigd door Verwijderd op 28-12-2005 01:06 ]


  • Nielson
  • Registratie: Juni 2001
  • Laatst online: 07:22
code:
1
copy "C:\Program Files\CA\BrightStor ARCserve Backup\LOG\cas_user_logs\caroot\%FILENAME%" "e:\deploy#"

Denk dat dit wel gaat werken.

[ Voor 9% gewijzigd door Nielson op 28-12-2005 01:07 ]


Verwijderd

Topicstarter
Thanks Nielson.

werkt super nu.
_/-\o_
Pagina: 1