campino1611
Goto Top

Befehl zum minimieren einer batch

Hallo administrator.de User,

ich habe mir eine batch-Datei geschrieben damit mein Rechner um eine bestimmte Uhrzeit herunterfährt (Taskplaner).
So, nun zu meiner Frage: Ich möchte das die batch sich selbst minimiert, das habe ich schon hinbekommen, die batch läuft fantastisch aber es muss doch eine Variante geben das Minimieren eleganter zu lösen als ich.

@echo off
if "%endh%"=="%ausloeser%" ( goto prog ) ELSE ( goto 1 )  
:prog
cls
echo Taskplaner zum Herunterfahren
echo.
echo.
echo.
echo Wann soll heruntergefahren werden?


set /P endh=Stunde:

if "%endh%" NEQ "00" if "%endh%" NEQ "01" if "%endh%" NEQ "02" if "%endh%" NEQ "03" if "%endh%" NEQ "04" if "%endh%" NEQ "05" if "%endh%" NEQ "06" if "%endh%" NEQ "07" if "%endh%" NEQ "08" if "%endh%" NEQ "09" if "%endh%" NEQ "10" if "%endh%" NEQ "11" if "%endh%" NEQ "12" if "%endh%" NEQ "13" if "%endh%" NEQ "14" if "%endh%" NEQ "15" if "%endh%" NEQ "16" if "%endh%" NEQ "17" if "%endh%" NEQ "18" if "%endh%" NEQ "19" if "%endh%" NEQ "20" if "%endh%" NEQ "21" if "%endh%" NEQ "22" if "%endh%" NEQ "23" if "%endh%" NEQ "24" goto 3  


set /P endm=Minute:

if "%endm%" NEQ "00" if "%endm%" NEQ "01" if "%endm%" NEQ "02" if "%endm%" NEQ "03" if "%endm%" NEQ "04" if "%endm%" NEQ "05" if "%endm%" NEQ "06" if "%endm%" NEQ "07" if "%endm%" NEQ "08" if "%endm%" NEQ "09" if "%endm%" NEQ "10" if "%endm%" NEQ "11" if "%endm%" NEQ "12" if "%endm%" NEQ "13" if "%endm%" NEQ "14" if "%endm%" NEQ "15" if "%endm%" NEQ "16" if "%endm%" NEQ "17" if "%endm%" NEQ "18" if "%endm%" NEQ "19" if "%endm%" NEQ "20" if "%endm%" NEQ "21" if "%endm%" NEQ "22" if "%endm%" NEQ "23" if "%endm%" NEQ "24" if "%endm%" NEQ "25" if "%endm%" NEQ "26" if "%endm%" NEQ "27" if "%endm%" NEQ "28" if "%endm%" NEQ "29" if "%endm%" NEQ "30" if "%endm%" NEQ "31" if "%endm%" NEQ "32" if "%endm%" NEQ "33" if "%endm%" NEQ "34" if "%endm%" NEQ "35" if "%endm%" NEQ "36" if "%endm%" NEQ "37" if "%endm%" NEQ "38" if "%endm%" NEQ "39" if "%endm%" NEQ "40" if "%endm%" NEQ "41" if "%endm%" NEQ "42" if "%endm%" NEQ "43" if "%endm%" NEQ "44" if "%endm%" NEQ "45" if "%endm%" NEQ "46" if "%endm%" NEQ "47" if "%endm%" NEQ "48" if "%endm%" NEQ "49" if "%endm%" NEQ "50" if "%endm%" NEQ "51" if "%endm%" NEQ "52" if "%endm%" NEQ "53" if "%endm%" NEQ "54" if "%endm%" NEQ "55" if "%endm%" NEQ "56" if "%endm%" NEQ "57" if "%endm%" NEQ "58" if "%endm%" NEQ "59" goto 3  


set ausloeser=100
start /MIN herunterfahren_nach_Zeit.bat
exit


:1
set mytime=%time%
set hour=%mytime:~0,2%
if "%hour:~0,1%"==" " set hour=0%hour:~1,1%  
set minute=%time:~3,2%
if "%hour%"=="%endh%" if "%minute%"=="%endm%" goto 2  
goto 1

:2
shutdown -s -f -t 00
exit

:3
cls
echo FALSCHE EINGABE
echo.
echo.
echo.
echo Bitte geben sie 2 Ziffern oder eine korrekte Uhrzeit an
echo.
echo in 5 Sekunden startet das Programm neu
ping 127.0.0.1 -n 5 >nul
goto prog


Ich meine die Zeile start /MIN herunterfahren_nach Zeit.bat

Danke im Vorraus

Content-ID: 135972

Url: https://administrator.de/contentid/135972

Ausgedruckt am: 22.11.2024 um 19:11 Uhr

60730
60730 15.02.2010 um 14:56:34 Uhr
Goto Top
Servus,

du setzt zwar ein paar (zwei) variablen und prüft die auch recht umständlich....
Machst dann aber einen Schritt:
shutdown -s -f -t 00
ganz ohne die Variablen

Von daher verstehe ich den ganzen Towuhabohu nicht und kann dir daher auch keine Lösung für deine in der Überschrift gestellte Frage geben.

Ps:
Im Fall einer "Fehlermeldung" - aber auch da ist jeder anders gestrickt- finde ich ein Sie haben blabla eingegeben - ich nehme nur werte von bis an - netter.
campino1611
campino1611 15.02.2010 um 16:16:48 Uhr
Goto Top
Ach du meinst ich söllte shutdown -s -f -t meine Zeit machen, also alles in sekunden umrechnen lassen???
na gut wär machbar aber da ist dann dieses hässliche Fenster.
funktioniert ja auch so.
nochmal zur erklärung der frage:
vllt. verständlicher

gibt es einen befehl zum Minimieren einer batch ohne Neuaufruf?
campino1611
campino1611 20.02.2010 um 09:13:26 Uhr
Goto Top
leider kommt mit -s -t so'n hässliches Fenster was ich nicht sehen möchte.
andere Ideen?