ODER Verknüpfung für batch file
Hallo zusammen,
ich bin neu in meinem Unternehmen und muss ein Problem lösen. Ich habe bereits im Forum gesucht, aber leider nichts passendes gefunden.
Das Programm soll:
- manuelles (durch User Eingabe) Starten eines Dienstes
- manuelles (durch User Eingabe) Stoppen eines Dienstes
- wird KEIN Manuelles Stoppen bestätigt, soll das Programm innerhalb einer bestimmten Zeit den Dienst automatisch stoppen
hier nun mein Anfang:
@echo off
:logon
echo Aktion start/stop:
echo manuelles Starten:
set /p Aktion=start:
IF %Aktion% == start net start Messenger
echo.
echo.
echo Dienst gestartet
echo.
echo manuelles Stoppen:
set /p Aktion=stop:
IF %Aktion% == stop net stop Messenger
echo auto Stoppen:
sleep 5
net stop Messenger
echo.
echo.
echo Dienst gestoppt
echo.
pause
Meine Überlegung ist eine ODER Verknüpfung für stoppen und autom. stoppen hinzuzufügen. Vielleicht hat jemand von euch eine bessere Idee.
Danke im Voraus
Siegmar
- manuelles (durch User Eingabe) Starten eines Dienstes
- manuelles (durch User Eingabe) Stoppen eines Dienstes
- wird KEIN Manuelles Stoppen bestätigt, soll das Programm innerhalb einer bestimmten Zeit den Dienst automatisch stoppen
hier nun mein Anfang:
@echo off
:logon
echo Aktion start/stop:
echo manuelles Starten:
set /p Aktion=start:
IF %Aktion% == start net start Messenger
echo.
echo.
echo Dienst gestartet
echo.
echo manuelles Stoppen:
set /p Aktion=stop:
IF %Aktion% == stop net stop Messenger
echo auto Stoppen:
sleep 5
net stop Messenger
echo.
echo.
echo Dienst gestoppt
echo.
pause
Meine Überlegung ist eine ODER Verknüpfung für stoppen und autom. stoppen hinzuzufügen. Vielleicht hat jemand von euch eine bessere Idee.
Danke im Voraus
Siegmar
Please also mark the comments that contributed to the solution of the article
Content-Key: 117438
Url: https://administrator.de/contentid/117438
Printed on: May 2, 2024 at 22:05 o'clock
7 Comments
Latest comment
Hallo Siegmar,
willkommen im Forum.
Ich nehme mal an, das dies eine Übungsaufgabe für dich ist.
Dein Code ist besser lesbar wenn du die Formatierungshilfe beachtest und Code Tags benutzt.
Wenn die erste Eingabe nicht start war, kannst du eigentlich abbrechen.
Die Abfrage ist Case sensitiv füge dem IF besser ein /i zu.
Wenn die Batchdatei in der zweiten Abfrage wartet, hast du keine Möglichkeit mehr etwas Zeitgesteuertes zu tun, das muss vorher passieren.
Du kannst mit
den Stop Befehl vorher absetzen.
Gruß
LotPings
willkommen im Forum.
Ich nehme mal an, das dies eine Übungsaufgabe für dich ist.
Dein Code ist besser lesbar wenn du die Formatierungshilfe beachtest und Code Tags benutzt.
Wenn die erste Eingabe nicht start war, kannst du eigentlich abbrechen.
Die Abfrage ist Case sensitiv füge dem IF besser ein /i zu.
Wenn die Batchdatei in der zweiten Abfrage wartet, hast du keine Möglichkeit mehr etwas Zeitgesteuertes zu tun, das muss vorher passieren.
Du kannst mit
start "" %comspec% /C (Sleep 5 & net stop messenger)
den Stop Befehl vorher absetzen.
Gruß
LotPings
Habe hier kein sleep, versuch mal
Die Pause ist nur zur Demo.
Gruß
LotPings
start /min "" %comspec% /C "ping -n 5 localhost & net stop messenger&pause"
Die Pause ist nur zur Demo.
Gruß
LotPings
Was start macht, bekommst du mit help start oder start /? in der Konsole raus. Comspec ist eine Umgebungsvariable und gibt den Pfad zum Kommandointerpreter an.
Wenn du SET eingibst, wird dir der Inhalt aller Umgebungsvariablen angezeigt, mit SET C bekommst du nur die angezeigt, die mit "C" beginnen.
Und zukünftig packe bitte deine Code-Schnipsel in entsprechende Tags, damit sie übersichtlicher werden, siehe > Formatierungshilfe.
Das kannst du übrigens mit "bearbeiten" in deinem Beitrag auch jetzt noch.
Wenn du SET eingibst, wird dir der Inhalt aller Umgebungsvariablen angezeigt, mit SET C bekommst du nur die angezeigt, die mit "C" beginnen.
Und zukünftig packe bitte deine Code-Schnipsel in entsprechende Tags, damit sie übersichtlicher werden, siehe > Formatierungshilfe.
Das kannst du übrigens mit "bearbeiten" in deinem Beitrag auch jetzt noch.
Jein. Es fällt zwar eher auf, aber du solltest die Zeilen in Code-Tags packen, wie es
wird.
wird.