Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [WINNT] Liczba procesów w bat

To: winnt@man.lodz.pl
Subject: Re: [WINNT] Liczba procesów w bat
From: "Grzegorz Niemirowski" <gnthexfiles@poczta.onet.pl>
Date: Tue, 1 Dec 2015 01:06:58 +0100
peter <ToJestTo@nic.nie.wiem> napisał(a):
To niestety niczego nie zmienia. Dalej nie  ma  poza pętlą w k liczby
aplikacji.
Jeszcze raz. Zostały uruchomione 4 równolegle identyczne aplikacje z
obliczeniami przez  zlecenia start. Kończą swoje działanie w różnym
czasie. Bat ma sprawdzać co minutę ile  jest aktywnych aplikacji. Jeżeli
nie będzie aktywnych aplikacji  program ma zakończyć  działanie.
projekt batu wygląda tak
Set k=15
:p1
if k GTR 0 (
  set k=tasklist | find /c "svchost"  rem ta linia nie działa, czyli nie
wpisuje rem do k liczby aplikacji
                                      rem zamiast svchost będzie nazwa
mojej aplikacji echo %k%
  timeout /T 60
  goto p1
 )
Ten program nie działa z powodu 4-tej linii. W k jest ciągle 15. W
twojej pętli też nie  wpisuje do k liczby aplikacji.
Może teraz coś wykombinujesz!

Włącz sobie opóźnione rozwiązywanie zmiennych:
SetLocal EnableDelayedExpansion
set m=0
:start
for /f "delims=" %%k in ('tasklist ^| find /c ^"svchost^"') do set m=%%k
echo !m!
pause
goto start

A najlepiej zrób jak pisze Robert i skorzystaj z czegoś współczesnego, a nie z BATów.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 12 days, 6 hours, 51 minutes and 34 seconds

<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>