Posts mit dem Label bat werden angezeigt. Alle Posts anzeigen
Posts mit dem Label bat werden angezeigt. Alle Posts anzeigen

Dienstag, 12. Februar 2013

Starte Windowsupdate mit Batch Skript

Ein kleines .bat Skript um das Windowsupdate zu starten, egal ob 32bit oder 64bit. Das Batchskript schaut ob es auf einem 64bit oder 32bit Rechner läuft und startet dann die jeweilig Windows Update Version. Einfach Text kopieren und speichern unter als .bat und Alle Dateien auswählen.


 @ECHO Off  
 mode con:cols=80 lines=20  
 COLOR 8F  
 Echo Starte Windows Update   
 ping localhost -n 2 >NUL  
 echo.  
 if defined ProgramFiles(x86) (  
 START "" %windir%\SysWoW64\wuapp.exe /detectnow  
 ) else (  
 START "" wuauclt /detectnow  
 )  
 pause  


Viel spass!

Dienstag, 13. März 2012

Windows Firewall mit Batch ein-/ausschalten (XP und Windows Vista oder Windows 7)

Eine kleine Anleitung wie man mit einem .bat Script den integrierten Firewall von Windows ein und ausschalten kann. Das hier ist mit einem Menu es gibt auch die Variante mit einem Toogle System (weiter unten).
Damit kann man mit einem Klick auf ein Batch Script die Funktion ausschalten und wieder einschalten, ohne mühsam in den Einstellungen zu suchen.
Bei Windows XP geht das folgendermassen:

@echo off
title Firewall Config:
cls
:start
REM Batch file zum starten und ausschalten vom windows xp firewall
echo.
echo    +---------- Firewall Menu ------------+
echo.                                          
echo       1. Check Status vom Windows Firewall
echo       2. Schalte Windows Firewall ein
echo       3. Schalte Windows Firewall aus     
echo       4. Exit                               
echo.                                      
echo    +-------------------------------------+
echo.
set choice=
set /p choice=Firewall?
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='1' goto check
if '%choice%'=='2' goto enable
if '%choice%'=='3' goto disable
if '%choice%'=='4' goto exit
echo '%choice%' diese Eingabe ist ungültig, bitte gebe eine Zahl zwischen 1-4 ein
echo.
goto start
:check
cls
netsh firewall show opmod
goto start
:enable
cls
echo Schalte Windows Firewall ein...
netsh firewall set opmode enable
goto start
:disable
cls
echo Schalte Windows Firewall aus...
netsh firewall set opmode disable
goto start
:exit


Diesen Text als firewallXP.bat speichern (notepad öffnen, einfügen, speichern unter, andere Datei, firewallxp.bat) ausführen, freude haben.
Achtung man muss es als Administrator laufen lassen. Dazu erstellst du eine Verknüpfung und startest sie mit Administratorenrechten. Oder von der Console wenn du sie als Admin gestartet hast. Wenn du nicht weisst was du tust lass es bleiben. Benutzung auf eigene Gefahr!

Bei Windows 7 oder Vista geht es anders da der Befehl netsh firewall durch netsh advfirewall ersetzt wurde und die Syntax wurde auch leicht verändert.

@echo on
title Firewall Config:
cls
:start
REM Batch file zum starten und ausschalten vom windows firewall
echo.
echo    +---------- Firewall Menu ------------+
echo.                                          
echo       1. Check Status vom Windows Firewall
echo       2. Schalte Windows Firewall ein
echo       3. Schalte Windows Firewall aus     
echo       4. Exit                               
echo.                                      
echo    +-------------------------------------+
echo.
set choice=
set /p choice=Firewall?
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='1' goto check
if '%choice%'=='2' goto enable
if '%choice%'=='3' goto disable
if '%choice%'=='4' goto exit
echo '%choice%' diese Eingabe ist ungültig, bitte gebe eine Zahl zwischen 1-4 ein
echo.
goto start
:check
cls
netsh advfirewall show currentprofile state
goto start
:enable
cls
echo Schalte Windows Firewall ein...
netsh advfirewall set currentprofile state on
goto start
:disable
cls
echo Schalte Windows Firewall aus...
netsh advfirewall set currentprofile state off
goto start
pause
:exit


Auch hier braucht ihr Administratorenrechte sonst geht es nicht. Einfach Rechtsklick auf das bat. und Mit Administratorenrechten ausführen:

Mit Toogle bat Script kann man ohne Menu einfach die Firewall an und ausschalten. Für Windows 7 + Vista. (XP weiter unten)

Auf einem Englischsprachigem System:
@echo off &setlocal
 for /f "tokens=2" %%a in ('netsh advfirewall show currentprofile state^|findstr /b /c:"State"') do (
 if "%%a"=="ON" (
 netsh advfirewall set currentprofile state off >nul
set var1= Inaktiv
 ) else (
 netsh advfirewall set currentprofile state on >nul
set var1= Aktiv
 )
 )
echo.
ECHO Windows Firewall ist nun %var1%...
ping -n 4 localhost >nul


Auf einem Deutschen System muss man die Begriffe Status und ON/OFF abändern :


@echo on &setlocal
 for /f "tokens=2" %%a in ('netsh advfirewall show currentprofile state^|findstr /b /c:"Status"') do (
 if "%%a"=="EIN" (
 netsh advfirewall set currentprofile state off >nul
set var1= Inaktiv
 ) else (
 netsh advfirewall set currentprofile state on >nul
set var1= Aktiv
 )
 )
echo.
ECHO Windows Firewall ist nun%var1%...
ping -n 4 localhost >nul


Muss man auch als Admin ausführen.

Hier noch für Windows XP:

Auf Deutsch:

@echo off &setlocal
title Firewall On/Off
 for /f "tokens=3" %%a in ('netsh firewall show opmod^|findstr /b /c:"Betriebsmodus"') do (
 if "%%a"=="Aktiv" (
 netsh firewall set opmode disable >nul
set var1= Inaktiv
 ) else (
 netsh firewall set opmode enable >nul
set var1= Aktiv
goto end
 )
 )
:end
echo.
ECHO Windows XP Firewall ist nun%var1%...
ping -n 4 localhost >nul



Ich hoffe die Info war nützlich!

Donnerstag, 10. November 2011

Batch Script choice

Hier eine kleine Anleitung wie man ein zeitgesteuertes Batch Skript macht.
Das Batch Skript startet wartet 10 Sekunden und dann startet es entweder einen Befehl oder wenn man eine Eingabe macht einen anderen Befehl. Eine Art Timer mit dem choice Befehl. Hier zuerst die Hilfeseite:

...........................................................................
choice /?

CHOICE [/C Optionen] [/N] [/CS] [/T Zeitlimit /D Auswahl] [/M Text]

Beschreibung:
    Mit diesem Programm können Benutzer ein Element aus einer
    Auswahlliste auswählen und den Index der Auswahl wiedergeben.

Parameterliste:
   /C    Optionen   Bestimmt die zu erstellende Auswahlliste.
                    Standardliste ist "JN".

   /N               Blendet die Auswahlliste in der Aufforderung aus.
                    Die Meldung vor der Aufforderung wird dennoch
                    angezeigt und die Optionen sind aktiviert.

   /CS              Aktiviert die Unterscheidung von Groß-/Kleinschreibung
                    Standardmäßig wird nicht zwischen Groß- und
                    Kleinschreibung unterschieden.

   /T    Zeitlimit  Bestimmt die Länge der Pause vor der Auswahl
                    in Sekunden. Gültige Wert sind 0 bis 9999.
                    Der Wert 0 bedeutet keine Pause und Verwendung
                    der Standardauswahl.

   /D    Auswahl    Bestimmt die Standardauswahl nach nnnn Sekunden.
                    Zeichen müssen im Auswahlsatz durch die Option
                    /C und nnnn mit Option /T festgelegt werden.

   /M    Text       Legt fest, welche Meldung vor der Aufforderung
                    angezeigt wird. Ohne Angabe wird nur die
                    Aufforderung angezeigt.

   /?               Zeigt diese Hilfe an.

   HINWEIS:
   Die Umgebungsvariable ERRORLEVEL wird auf den Index des
   Schlüssels gesetzt, der aus dem Auswahlsatz ausgewählt wurde. Die
   erste Auswahl gibt einen Wert von 1, die zweite einen Wert von 2
   usw. Falls der Benutzer eine unzulässige Taste drückt, wird ein
   akustisches Signal wiedergegeben. Bei einem Fehlerzustand wird
   ein ERRORLEVEL von 255 wiedergegeben. Beim Drücken auf STRG+Untbr
   oder STRG+C wird ein ERRORLEVEL-Wert von 0 wiedergegeben.
   Führen Sie die ERRORLEVEL-Parameter in absteigender Reihenfolge
   auf, falls Sie diese in einem Batchprogramm verwenden.

Beispiele:
  CHOICE /?
  CHOICE /C JNA /M "Drücken Sie J für Ja, N für Nein oder A für Abbrechen."
  CHOICE /T 10 /C JNA /CS /D J
  CHOICE /C ab /M "Wählen Sie a für Option 1 und b für Option 2."
  CHOICE /C ab /N /M "Wählen Sie a für Option 1 und b für Option 2."

...........................................................................


Hier nun das Skript, einfach im Notepad einfügen und als choice.bat speichern (als andere Datei nicht .txt).

@ECHO Off
title Choice Test
cls
echo.
Goto A
:B
ECHO
Du hast N gedrueckt!
goto C
:A
choice /C:YN /T 10 /D Y /M "
Wenn du N schreibts passiert was sonst nichts."
echo.
if ERRORLEVEL 2 goto B
echo
Du hast nichts gemacht.
:C
Pause
exit



Was macht es genau?
Zuerst geben wir dem ganzen einen Titel und ein bisschen Formatierung:

@ECHO Off
title Choice Test
cls
echo.


Dann sagen wir dem Skript es soll B überspringen und zu A hüpfen.

 Goto A
:B
ECHO Du hast N gedrueckt!
goto C



Bei A gibt es nun die choice Anweisung /C gibt die Möglichkeiten zum Auswählen an /C:12345 oder /C:JN
/T gibt die Zeit in Sekunden bis es Automatisch zu der Auswahl geht die bei /D bestimmt wurde. /M gibt eine Frage(Message) zur Auswahl
 
:A
choice /C:YN /T 10 /D Y /M "Wenn du N schreibts passiert was sonst nichts."
echo.



Nun wollen wir das es bei der Antwort Möglichkeit 2, also N zu B springt und bei Y (default) passiert nichts, oder das was ihr als Default reinschreibt. Und damit die Auswahl nicht nochmals ausgeführt wird springt sie ans Ende zu :C
Den Pause Befehl kann man wegmachen damit es Automatisch ohne Benutzerinteraktion den Default Befehl ausführt wenn es keine Eingabe gibt.

if ERRORLEVEL 2 goto B
echo Du hast nichts gemacht.
:C

Pause
exit


Viel spass