fritzo 10 Geschrieben 1. Juli 2004 Melden Teilen Geschrieben 1. Juli 2004 Hi, ich hab in letzter Zeit viel Spaß mit dem Erstellen von Batches und mache einfach mal einen Thread mit kleinen Tips dazu auf. Wahrscheinlich sagen einige Leute jetzt "baaah, es gibt doch VBScript" und haben recht damit, aber vom Zeitfaktor her ist nichts schneller gebaut als ein Batchfile. Tip 1: Ping auf mehrere Rechner und Auswertung --------------------------------------------------------------------- Erstellt eine Datei namens hosts.txt, in der Ihr Eure Systeme listet, getrennt mit CrLf. Dann geht hin und erstellt ein Batchfile namens pinger.cmd mit folgendem Inhalt: @echo off set host=hosts.txt for /f %%i in (%host%) do (ping -n 1 %%i | find "Antwort" > nul ) && (@echo %%i ist online) || (@echo %%i ist offline) Würde mich sehr freuen, wenn andere auch kleine Tips zu Batches hier posten. Grüße, Fritz Zitieren Link zu diesem Kommentar
psytekk 10 Geschrieben 1. Juli 2004 Melden Teilen Geschrieben 1. Juli 2004 hehe coole sache macht noch spaas :) Zitieren Link zu diesem Kommentar
jerusalaire 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Okay: Folgende batch erstellt ein Backup ausgewählter Ordner auf CD-RW mit der Kommandozeilenversion von Nero: @echo off set Ziel="%date%" rem Die Variable Ziel bestimmt später den Namen der CD, nämlich das aktuelle Datum xcopy /d /y /e /i H:\Ordner1 J:\backbrenn\Ordner1 xcopy /d /y /e /i H:\Ordner2 J:\backbrenn\ordner2 xcopy /d /y /e /i H:\Ordner3 J:\backbrenn\Ordner3 rem Alle Daten werden in einen temporären Backbrennordner verschoben, da Nero per rem Kommandozeile nur ein Ordner übergeben werden kann (oder weiss jemand was anderes?) C:\Programme\Ahead\Nero\NeroCmd.exe --write --real --drivename f --speed 8 --iso %Ziel% --create_iso_fs --verify "F:\backbrenn\*.*" --recursive --detect_non_empty_cdrw --force_erase_cdrw rem Nero starten: CD wird überprüft, wenn nicht leer gelöscht und rem anschliessend das aktuelle rem Backup geschrieben und überprüft- evtl rem Fehler siehe rem neroerr.txt. Auf diese Weise hat ma immmer ein aktuelles Backup. rem --drivename f = CD-Brenner rem Achtung! CD- Laufwerk wird möglicherweise automatisch geöffnet rem und wieder geschlossen - das ist okay so. rmdir /s /q rem Backbrennordner wird gelöscht. shutdown -u rem Rechner wird runtergefahren.Shutdown.exe muss auf dem Rechner sein. rem Download-URL http://www.budja.com/shutdown/shutdown.exe. - geht nur mit W2k/XP Zitieren Link zu diesem Kommentar
psytekk 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Da hätte ich auch noch ein kleines ... ganz Toll an einer LAN Party :) mach immer wieder Fun :) :x net send * Hallo der Nachrichtendienst ist doch schon eine Tolle Sache :) mfg LANPARTY GEIST goto x wenig code grosse wirkung :) Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Komisch wenn ich das letzte in meinem Netz teste kommt nix nirgendwo an. Hm, sollte man dazu den Nachrichtendienst auch anschalten wenn man auf ne LAN geht? :) Zitieren Link zu diesem Kommentar
psytekk 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Das ist natürlich eine bedingung :) aber an den Lan party`s sind zimlich viele DAU`s die es on Haben :)) Zitieren Link zu diesem Kommentar
olafw 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Moin! Auch eine nützliche Batch: 'Ordner und Dateien auflisten und in eine Textdatei wiedergeben ordnername = "c:\" textdatei = "C:\testdatei.txt" Set IFileSystem3 = CreateObject("Scripting.FileSystemObject") 'auf den Ordnernamen zugreifen Set IFolder = IFileSystem3.GetFolder(ordnername) For each IFile in IFolder.Files liste = liste & IFile.name & vbCrlf next msgbox liste 'Textdatei anlegen und überschreiben, 'falls schon vorhanden Set ITextStream = IFileSystem3.CreateTextFile(textdatei, true) 'text schreiben ITextStream.Write(liste) Viel Spaß noch! ;) Zitieren Link zu diesem Kommentar
NetJay 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 @echo Es wird die wichtig.msi auf dem Rechner installiert net use L:\\softwareserver\msi cd C: md \msi xcopy L:wichtig.msi "C:\msi\" msiexec /a C:\msi\*.msi pause @echo Nur um die Installation zum Abschluss zu bringen, bevor die Ordner oder Netzlaufwerke wieder gelöscht werden. Nach installation beliebige Taste druecken rmdir /s /q \Explorer net use L: /del zusatz das /a steht für admin installation. nur eine möglichkeit msi pakete zu installieren, für gemischte umgebungen oder für admins ohne GPO´s zu beachten ist auch das der text hinter dem 2te @echo nachher in einer zeile steht. sonst gibts fehler... mfg NetJay Zitieren Link zu diesem Kommentar
psytekk 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 Also msi packete installier ich via GPO :) geht einfacher :) Zitieren Link zu diesem Kommentar
GerhardG 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 hier ein script was ich eine zeitlang verwendet habe um diverse statistiken mit rrdtool (http://www.rrdtool.org) zu erstellen. hier ein beispiel für eine apc usv anlage mit management karte wo diverse werte wie load, temperatur der sensoren, ladestande,... aufgezeichnet wurden. für die bedarfsplanung ist sowas wohl unumgänglich. ich habe es auf auf eine snmp abfrage gekürzt, wäre sonst etwas zu lange ;) REM ### USV Status per SNMP verarbeiten ### REM ### Datums Variable erzeugen ### SET DATUMUPS= DATE.EXE +%%s > DATEUPS.TXT SET /P DATUMUPS= < DATEUPS.TXT DEL DATEUPS.TXT REM ### Daten per SNMP holen ### snmpget 10.70.3.21 public .1.3.6.1.4.1.318.1.1.1.2.2.1.0 > UPS_BATT.TXT REM ### Daten einlesen ### SET /P upsbatt= <UPS_BATT.TXT REM ### DATEN in RRD Datenbank speichern ### RRDTOOL update upsbatt.RRD %DATUMUPS%:%upsbatt% REM ### Grafik aus RRD Datenbank erzeugen ### REM ### Externer Temperatur Sensor### rrdtool graph ..\data\stats\upsbatt.gif --start -86400 --vertical-label "Battery Capacity" -w 600 -h 200 DEF:upsbatt=upsbatt.rrd:upsbatt:AVERAGE AREA:upsbatt#00ff00:"Battery Capacity" am ende kommt ein kleines bild raus welches einfach in ner webseite eingebaut werden kann (siehe anhang). nachdem die hostzahl aber stark gestiegen ist und wir weit mehr werte aufzeichnen (switche, router, drucker, hdd verbrauch, temperaturen,...) wurde mir die sache zu aufwändig und ich hab auf cacti umgestellt (http://www.raxnet.net). damit ist es dank templates weit einfacher eine große anzahl an hosts zu verwalten. Zitieren Link zu diesem Kommentar
GerhardG 10 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 für alle die noch alte nt clients ohne sus client betreuen müssen, hier ein kleines script welches diese aufgabe mit psexec.exe (google) erledigt. es sind dazu 2 scripte notwendig, "remoteinstall.bat" wird gestartet und holt sich aus der textdatei "ipadressen.txt" die rechner die es updaten soll. auf diese clients wird zuerst die datei "patch.bat" kopiert welches dann mit psexec am entfernten client gestartet wird. damit können zb auch die sasser/msblaster patches problemlos verteilt werden. ### Remoteinstall.bat: rem @ECHO OFF rem CLS for /F %%i in (ipadressen.txt) do ( NET USE \\%%i\IPC$ /USER:adminuser password COPY PATCH.BAT \\%%i\C$\WINNT\ PSEXEC \\%%i -u adminuser -p password C:\WINNT\PATCH.BAT DEL \\%%i\C$\WINNT\PATCH.BAT NET USE \\%%i\IPC$ /D ) ######################## ### patch.bat @ECHO OFF CLS IF EXIST "%WINDIR%\PROFILES\ALL USERS\Startmen\." GOTO NT IF EXIST "%ALLUSERSPROFILE%\." GOTO W2K GOTO ENDE :NT net use \\server\ipc$ password /user:adminuser \\server2\install\TEMP\patch.exe /quiet /norestart net use \\server\ipc$ /d GOTO ENDE :W2K GOTO ENDE :ENDE Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 2. Juli 2004 Melden Teilen Geschrieben 2. Juli 2004 alles mögliche :p cu blub code for 101 one linersrev1-26.txt Zitieren Link zu diesem Kommentar
fritzo 10 Geschrieben 2. Juli 2004 Autor Melden Teilen Geschrieben 2. Juli 2004 Hi, hier ein Batchfile, das ich benutzt habe, um die Installation von NAI ViruScan 7.1 auf Systemen zu checken. Es -liest die zu scannenden Hosts aus einer Datei namens "host.txt" (Hostname, mit CrLf getrennt) -pingt den Host an - wenn keine Antwort erfolgt, wird der nächste Host gelesen -wenn der Host online ist, wird remote geprüft, ob die drei Prozesse laufen, die zu den NAI-Diensten gehören -Ausgabe erfolgt am Bildschirm und in drei Textfiles (offline, ok, Fehler) Ihr braucht "tasklist.exe" (WindowsXP). Verwendet keine Prozess/Dienstenamen über 15 Zeichen, denn die werden teilweise gekappt. Der "find" - Befehl kommt aber auch mit Teilstrings klar, es ist also kein Problem. Viele Grüße, Fritz rem -------------------------------------------------------------------------- rem Start des Batchfiles @echo off cls @echo Checkscript fuer NAI ViruScan7.1 - Version 0.2 @echo Fritzo 01.07.2004 rem ------------------File-Namen set host=host.txt set file_pos=NAI_ok.txt set file_neg=NAI_Fehler.txt set file_off=NAI_offline.txt rem ------------------Prozessnamen set b1=FrameworkServic set b2=mcshield.exe set b3=vstskmgr.exe rem ------------------Dienstnamen set d1=McAfee Framework Service set d2=McShield set d3=McTaskManager rem ------------------Ergebnis-Files loeschen @echo Check auf bereits vorhandene Files mit Ergebnissen @echo. if exist %file_pos% del %file_pos% && (@echo File %file_pos% wurde geloescht, ok) || (@echo File %file_pos% nicht vorhanden, ok) if exist %file_neg% del %file_neg% && (@echo File %file_neg% wurde geloescht, ok) || (@echo File %file_neg% nicht vorhanden, ok) if exist %file_off% del %file_off% && (@echo File %file_off% wurde geloescht, ok) || (@echo File %file_off% nicht vorhanden, ok) @echo. @echo. rem ------------------Loop Start for /f %%i in (%host%) do (ping -n 1 %%i | find "Antwort" > nul ) && ( @echo ----------------------------------------------- @echo Host: %%i ist online tasklist /s \\%%i | find /i "%b1%" > nul && (echo %%i - Dienst %d1% laeuft >> %file_pos% && echo Dienst %d1% laeuft) || (echo %%i - Dienst %d1% laeuft nicht >> %file_neg% && echo Dienst %d1% laeuft nicht) tasklist /s \\%%i | find /i "%b2%" > nul && (echo %%i - Dienst %d2% laeuft >> %file_pos% && echo Dienst %d2% laeuft) || (echo %%i - Dienst %d2% laeuft nicht >> %file_neg% && echo Dienst %d2% laeuft nicht) tasklist /s \\%%i | find /i "%b3%" > nul && (echo %%i - Dienst %d3% laeuft >> %file_pos% && echo Dienst %d3% laeuft) || (echo %%i - Dienst %d3% laeuft nicht >> %file_neg% && echo Dienst %d3% laeuft nicht) ) || ( @echo ----------------------------------------------- (@echo Host %%i ist offline && @echo Host %%i ist offline >> %file_off%) ) rem ------------------Loop Ende rem Ende des Batchfiles rem ------------------------------------------------------------------------------- Zitieren Link zu diesem Kommentar
NetJay 10 Geschrieben 5. Juli 2004 Melden Teilen Geschrieben 5. Juli 2004 Original geschrieben von psytekk Also msi packete installier ich via GPO :) geht einfacher :) ??? was steht denn in der beschreibung??? schon mal softwareverteilung mit GPO an den users ordner in der ads gehängt? schon mal GPO´s für win98 und oder NT gemacht? nö für solche fälle ist das, hätt ich vielleicht dabeischreiben sollen... mfg NetJay Zitieren Link zu diesem Kommentar
psytekk 10 Geschrieben 5. Juli 2004 Melden Teilen Geschrieben 5. Juli 2004 *Schluck* :) stimmt von der seite hab ich es noch nicht betrachtet sorry :) Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.