Script voert niet uit vanuit bat, wel op prompt

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Eagle Creek
  • Registratie: Oktober 2002
  • Laatst online: 06-10 11:37

Eagle Creek

Breathing security

Topicstarter
Hi,

Ik ben bezig met een kort scriptje om het resultaat van een zoekstring weer te geven in een alertvenster.

Als ik
code:
1
for /f "delims=" %a in ('systeminfo ^| findstr "opstarttijd"') do @set myvar=%a


Uitvoer vanuit de prompt verschijnt het gewenste resultaat in de variabele.
Als ik hetzelfde commando in een bat file stop en uitvoer breekt deze af met de melding.

code:
1
2
3
C:\Users\User>"C:\apps\Scripts\opstarttijd2.bat"
a niet verwacht op dit moment.
C:\Users\User>for /f "delims=" a


Zie ik iets over het hoofd?

~ Information security professional & enthousiast ~ EC Twitter ~


Acties:
  • 0 Henk 'm!

  • LnC
  • Registratie: Juni 2005
  • Laatst online: 03-08 11:16

LnC

The offending line...

Ik denk (niet zoveel kaas van gegeten, maar ik kan het toch proberen) dat er nog een % erbij moet.
Zie hier.

for /f "delims=" %%a in ('systeminfo ^| findstr "opstarttijd"') do @set myvar=%a

Acties:
  • 0 Henk 'm!

  • mhoogendam
  • Registratie: Oktober 2002
  • Laatst online: 16:22
Eagle Creek schreef op maandag 14 april 2014 @ 11:09:
Hi,

Ik ben bezig met een kort scriptje om het resultaat van een zoekstring weer te geven in een alertvenster.

Als ik
code:
1
for /f "delims=" %a in ('systeminfo ^| findstr "opstarttijd"') do @set myvar=%a


Uitvoer vanuit de prompt verschijnt het gewenste resultaat in de variabele.
Als ik hetzelfde commando in een bat file stop en uitvoer breekt deze af met de melding.

code:
1
2
3
C:\Users\User>"C:\apps\Scripts\opstarttijd2.bat"
a niet verwacht op dit moment.
C:\Users\User>for /f "delims=" a


Zie ik iets over het hoofd?
Volgens mij moet je 2x %% gebruiken in beide instanties van a%:

code:
1
for /f "delims=" %%a in ('systeminfo ^| findstr "opstarttijd"') do @set myvar=%%a

Acties:
  • 0 Henk 'm!

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

C:\Windows\system32>for /?
Runs a specified command for each file in a set of files.
...
To use the FOR command in a batch program, specify %%variable instead
of %variable. . .

QnJhaGlld2FoaWV3YQ==


Acties:
  • 0 Henk 'm!

  • Eagle Creek
  • Registratie: Oktober 2002
  • Laatst online: 06-10 11:37

Eagle Creek

Breathing security

Topicstarter
Op het oog lijkt dat de oplossing. Ga ik uitproberen, alvast bedankt!

Edit:
Works :)

[ Voor 12% gewijzigd door Eagle Creek op 15-04-2014 14:10 ]

~ Information security professional & enthousiast ~ EC Twitter ~