- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- sh4d0w: Nyitlocker
- Luck Dragon: Asszociációs játék. :)
- gerner1
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- kraftxld: Diáklaptop - Dell Latitude 3140 - Királyunk ajándéka
- sziku69: Fűzzük össze a szavakat :)
- Sirandrish: Dohányzás Vége(!?)
- sziku69: Szólánc.
-
LOGOUT

Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Hali!
Tök egyszerű Windows-beli batch programozáshoz kérnék segítséget, itt valaki biztos tudja a választ.
Az Apache-szolgáltatást szeretném elindítani batch programból, ezzel a paranccsal:
net start Apache2.2
Ha admin-jogom van, ez működik is.De admin-jogok nélkül indítva a cmd-t nem megy, kiírja, hogy "Access is denied", ez nem is baj, ezt szereteném megfelelően kezelni.
Egész pontosan így néz ki a válaszüzenet:
System error 5 has occurred.
Access is denied.Na, én azt szeretném elérni, hogy ha ezt írja ki, akkor annak megfelelő válaszüzenetet is írjon ki az adott felhasználónak, pl.: "Nincs admin-jogod.", vagy hasonló.
A sima 'find' paranccsal próbálkoztam, de nem működött úgy, ahogy szerettem volna. Valószínű, hogy az "Access is denied" sztring némi késleltetéssel érkezik, nem rögtön, vagy a franc tudja, de mindenesetre a find nem találja meg a sztringet még akkor sem, ha pont ez a fenti a kiírt üzenet.Így próbálkoztam:
@echo off
set keresendo=Access is denied
echo Ezt keressuk: "%keresendo%"
rem set errorlevel =
net start Apache2.2 | find /i "%keresendo%" > nul
echo hibaszint: "%ERRORLEVEL%"
if %ERRORLEVEL% EQU 0 goto megtalalta
if %ERRORLEVEL% EQU 1 goto nincs_ilyen
if %ERRORLEVEL% EQU 2 goto para
:megtalalta
echo OK, megtalaltam
echo Nincs jogod elinditani a szolgaltatast.
goto end
:nincs_ilyen
echo Nincs meg a keresett sztring.
echo Elvileg nincs jogosultsaghoz kotheto problema.
goto end
:para
echo Valami nem OK...
goto end
:end
echo -- VEGE --
pauseTehát itt admin-jogok nélkül elindítva a cmd-t azt kéne kiírnia, hogy "Nincs jogod elinditani a szolgaltatast.".
A find ilyenkor beállít egy errorlevelt, és amennyiben nem talált semmit, 1-esre állítja a hibaszintet, különben pedig 0-ra, ha megtalálta a keresett sztringet.
(A set errorlevel = sort csak kipróbáltam, mert olvastam már olyan hibáról valahol, aminek ez volt a megoldása, de mivel kommentezve van, ez most mellékes.)Ez a kód működik sima azonnali kiíratásnál, mert kipróbáltam ugyanezt egy másik saját batch-programban keresgélve a fentihez hasonló módon. A másik batch-programnak csak annyi a dolga, hogy kiírja a fenti "Access is denied" részt is tartalmazó sorokat, így:
@echo off
echo.
echo System error 5 has occurred.
echo.
echo Access is denied. blabla
echo.Na, ezt elmentettem "accesskiir.bat" néven, és kipróbáltam ezt az előző find parancsot, és ez jól MŰKÖDÖTT:
accesskiir.bat | find /i "%keresendo%" > nul
A 0-s hibaszintet állította be, helyesen, tehát megtalálta, amit kerestem.
Ha az "Access" szócskát mondjuk kivettem a fentiből, akkor már az 1-es hibaszintet állította be, tehát nem találta meg. Épp ez lenne az elvárt működés.Miért nem működik ugyanez a korábbira, ha esetleg némileg késleltetve van a keresett sztring, mint a szolgáltatás elindításánál?
Hogyan kellene megoldani?Köszi szépen!

Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
- Milyen autót vegyek?
- Okos Otthon / Smart Home
- Arc Raiders
- Genshin Impact (PC, PS4, Android, iOS)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Autós topik
- Linux kezdőknek
- Gyúrósok ide!
- Debrecen és környéke adok-veszek-beszélgetek
- Ventilátorok - Ház, CPU (borda, radiátor), VGA
- További aktív témák...
- Lenovo ThinkPad T14s Gen 6 Snapdragon X Elite 32GB 1TB Win11 Pro ARM EU billentyűzet
- Lenovo T495 Ryzen 5 pro 3500U, 16GB RAM, 512GB SSD, jó akku, újszerű állapot, számla, garancia
- Eladó Konfig I7 6700 16GB DDR4 480GB SSD GTX1660 6GB!
- Surface 3 - 13,5" 2k érintő, i5 1035G7, Iris Plus, 16GB RAM, SSD, jó akku, újszerű állapot, számla
- Playstation 4 slim (500GB)
- HIBÁTLAN iPhone 15 Pro 128GB Natural Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4226
- Eladó Samsung S23 Ultra 8/256GB / 12 hó jótállás
- HP 13 Elitebook 830 G7 FHD IPS 600nit i5-10210U 4.2Ghz 16GB RAM 256GB SSD Intel UHD W11 Pro Garancia
- Bomba ár! Lenovo ThinkPad X280 - i5-G8 I 8GB I 256SSD I 12,5" FHD Touch I HDMI I Cam I W11 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



