Hinweis: Windows macht i.d.R. keinen Unterschied bei der Schreibweise von Befehlen, Groß- Kleinschreibung wird ignoriert, steigert aber die Lesbarkeit.
Die Zeilen [1 – 33] machen das gleiche, wie im Login-Skipt, Variablen für Datums- und Zeitangaben.
-
@echo off & setLocal
-
:: ———————————————————–
-
:: Skriptname : logout.cmd
-
:: Beschreibung: Logout speichern und PC ausschalten
-
:: ———————————————————–
-
rem chcp 1252
-
cls
-
echo.
-
echo Shutdown …
-
-
:: ——————————————————–
-
:: Tag, Monat, Jahr und Zeit ermitteln
-
:: ——————————————————–
-
set cy=%date:~-4%
-
set cm=%date:~-7,2%
-
set cd=%date:~-10,2%
-
for /F %%i IN (‘time /T’) DO set ct=%%i
-
-
set now=%cy%%cm%%cd%–%ct%
-
set datum=%cy%%cm%%cd%
-
-
:: ——————————————————–
-
:: Wochentagszahl (0-6) in Text umwandeln
-
:: ——————————————————–
-
for /f %%g in (‘wmic path win32_localtime get dayofweek ^|findstr /v /r “^$“‘) do (set DOW=%%g)
-
-
if %DOW%==0 set DOW=So.
-
if %DOW%==1 set DOW=Mo.
-
if %DOW%==2 set DOW=Di.
-
if %DOW%==3 set DOW=Mi.
-
if %DOW%==4 set DOW=Do.
-
if %DOW%==5 set DOW=Fr.
-
if %DOW%==6 set DOW=Sa.
-
-
:: ——————————————————–
-
:: Verzeichnis für Log-Datei erstellen, falls nicht vorhanden
-
:: und als Ziel-Verzeichnis (zv) festlegen
-
:: ——————————————————–
-
if NOT EXIST %USERPROFILE%\Lilo mkdir %USERPROFILE%\Lilo
-
set zv=%USERPROFILE%\LiLo\
-
-
echo %DOW% %CD%.%CM%.%CY%
-
echo.
-
-
echo %NOW% %DOW% Logout >> %zv%\%cy%%cm%_lilo.log
-
-
echo.
-
type %zv%\%cy%%cm%_lilo.log | findstr /b %cy%%cm%%cd%
-
-
:: ——————————————————–
-
:: Warte 2 Sekunden, dann System herunterfahren
-
:: -s = Fährt den Computer herunter.
-
:: -f = Erzwingt das Schließen ausgeführter Anwendungen.
-
:: -t = Setzt das Zeitlimit vor dem Herunterfahren auf x Sekunden.
-
:: ——————————————————–
-
timeout /T 2
-
c:\windows\system32\shutdown.exe -s -f -t 1
-
Zeile [39] prüft ob im User-Profil das Verzeichnis “LiLo” zum Speichern der Log-Datei vorhanden ist, falls nicht wird es erstellt.
Zeile [40] setzt die Variable (vz) für das Ziel-Verzeichnis als “%USERPROFILE%\LiLo\“.
Zeile [45] schreibt die Variablen %DOW% (Wochentag) %cd%.%cm%.%cy% z.B. 01.01.1970 und Logout in die Log-Datei.
Zeile [48] zeigt auf stdout (Bildschirm) mit findst / b alle Zeilen, die das Tagesdatum am Anfang der Zeile enthalten.
Zeile [56] läßt das System 2 Sekunden warten, hier ist noch die Möglichkeit das Skript abzubrechen.
Zeile [57] fährt das System herunter und schaltet es aus.
Damit man das System nun bequem herunterfahren kann, braucht es noch einen “Schalter”. Dafür ist der Schnellste Weg eine Verknüpfung auf den Desktop zu erstellen.
- Rechtsklick auf eine freie Stelle im Desktop und Neu -> Verknüpfung …
- Hier den Pfad zum neuen Skript einfügen z.B. %USERPROFILE%\Batches\logout.cmd
- Rechts Klick auf die Verknüpfung und Eigenschaften wählen.
Die 197001_lilo.log Datei sieht dann wie folgt aus …
Dieser Beitrag wurde bisher 181 mal gelesen.