Text ersetzen

Beschreibung

Mittels VBS Text in Zeile erstetzen...

Parameter

Originaltext [text]
alter Text ["ein Test"]
neuer Text ["abgeschlossen"]
Textersetzungsanfang [1] -> optional
Anzahl der Textersetzung [-1] -> alle ersetzen
Klein- und Grosschreibung beachten [1] = nicht beachten [0] = beachten -> optional


text = "Dies ist ein Test."
ausgabe = Replace(text, "ein Test", "abgeschlossen",1,-1,1)
msgbox ausgabe

WSUS 3.0 Migration von Windows Server 2003 auf Windows Server 2008 (R2)

WSUS 3.0 Migration von Windows Server 2003 auf Windows Server 2008 (R2)

Auf dem alten Server
1.) WSUS API Samples and Tools downloaden: WSUS API Samples and Tools (Sie finden die Installationsdatei auch am Ende des Artikels)
2.) In den Ordner C:\Program Files\Update Services 3.0 API Samples and Tools\WsusMigrate\WsusMigrationExport wechseln
3.) Ausführen von wsusmigrationexport.exe settings.xml
4.) Die MSDE Instanz stoppen, Update Dienst stoppen
5.) WSUS Verzeichnisse sichern (z.B.: NTBACKUP)
Achtung: Nur Windows Server 2008 unterstuetzt das separat herunterzuladende Windows NT Restore Utility (NTBACKUP read only). Windows Server 2008 R2 unterstuetzt das nicht mehr

Auf dem neuen Server
1.) WSUS 3.0 SP2 ueber den Servermanager installieren (Rolle hinzufügen) (inkl. WMDE)
2.) Erstkonfigurationsassistent nicht ausführen
3.) WSUS Dienst und MSDE Dienst stoppen
4.) WSUS Verzeichnisse zurückkopieren (inkl. WSUS DB)
5.) In den Ordner C:\Program Files\Update Services 3.0 API Samples and Tools\WsusMigrate\WsusMigrationImport wechseln
6.) Ausführen von wsusmigrationimport.exe settings.xml All None

Danach ist die alte WSUS Konfiguration inkl. aller Updates verfügbar!

ACHTUNG: Anschliessend in den GPO-Einstellungen noch den Pfad zum WSUS Server anpassen!

Kategorien: WSUS
Tags für diesen Artikel:

Sicherung mit mehreren Ständen

Dieses Skript kopiert bestimmte Dateien/ordner in einen Sicherungsordner und hält hier mehrere Stände vor. Die Backup-Ordner werden nach Datum benannt und es wird überprüft, ob ein bestimmter Ordner schon das maximale alter erreicht hat und wird dann ggf. gelöscht. Die Maximale Anzahl der Stände kann frei definiert werden und wird über das DateLastModified überprüft!

'--------- Ralf Entner / MR Datentechnik
'--------- Oktober 2007

'Skript zum Sichern von Dateien in einen Ordner
'Immer einen neuen Ordner erstellen und max. x Stände dieses Ordners vorhalten
'Das Skript erzeugt einen Ordner mit dem Namen des Datums
'Danach können beliebige Dateien in den Ordner kopiert werden
'Am Schluß wird geprüft, wieviele Stände dieses Ordners bereits vorleigen
'Es werden die Maximale Anzahl an Ordner vorgehalten, die unter MaxFolder angegeben 'sind 'alle anderen werden gelöscht

'Variablen-Erklärung

'MaxFolder = Anzahl der Speicherstände, die vorgehalten werden sollen
'sFolder = Sicherungsornder, in denen die Speicherstände vorgehalten werden
'bFolder = täglicher Backup-Ordner, in dem die entsprechenden Dateien kopiert werden

'--------------

'Variablen deklarieren

Option Explicit
on error resume next
Dim wshshell, fso, MaxFolder, sFolder, bFolder, ordner, unterordner


'--------------

'Objekte generieren
set wshshell = CreateObject("Wscript.Shell")

set fso = CreateObject("Scripting.FileSystemObject")

'--------------

'Variablen festlegen

MaxFolder = 5
sFolder = "E:\test\"
bFolder = sFolder & date & "\"

'--------------

'Backup-Verzeichnis bFolder in Sicherungs-Ordner sFolder erstellen

fso.createfolder(bFolder)

'--------------

'Dateien Kopieren
'Es können Wildcards verwendet werden!
'Datei kopieren : Syntax copyfile QUELLE, ZIEL, Überschreiben true|false
'Ordner kopieren: Syntax copyfolder QUELLE, ZIEL, Überschreiben true|false

fso.copyfile "C:\cbdata\AutoSave.cba", bFolder, true

'--------------

'Überprüfen, ob alte Stände gleöscht werden können
'Überprüft ob DateLastModified kleiner ist als heute minus MaxFolder-Tagen
'Wenn diese Differenz kleiner ist, dann wird dieser gelöscht

set ordner = fso.getfolder(sfolder)

for each unterordner in ordner.subfolders
If unterordner.DateLastModified < (now - maxfolder) Then
fso.deletefolder unterordner
end if
next

'--------------

VBS Skript Ping (WMI)

'************************************************************
'
' Datei: wmi-ping.vbs
'
' Gibt 'kurzfristig' zurück, ob ein PC erreichbar ist.
'
'************************************************************

Option Explicit

Dim Tst, ZielPC
ZielPC = "192.168.100.11"

Tst = Timer

' If WMIpingOK( ZielPC ) = False Then
If not WMIpingOK( ZielPC ) Then
MsgBox ZielPC & vbCRLF & vbCRLF & "ist momentan nicht erreichbar!"& vbCRLF & vbCRLF & "Später noch einmal versuchen.", , Timer - Tst & " - " & WScript.ScriptName
WScript.Quit
End If

MsgBox ZielPC & vbCRLF & vbCRLF & "ist jetzt erreichbar!", , Timer - Tst & " - " & WScript.ScriptName

WScript.Quit


' Aufruf z.B.: If not WMIpingOK( ZielPC ) Then MsgBox ZielPC & " ist nicht erreichbar." : WScript.Quit

Dim objPing, objStatus
WMIpingOK = True
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select * from Win32_PingStatus where address = '" & PCName & "'")
For Each objStatus in objPing
If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
WScript.Echo("PCName " & PCName & " is not reachable")
WMIpingOK = False
End If
Next
Set objPing = Nothing
End Function ' WMIpingOK( PCName )

Dienste überprüfen/neu starten mit LOG-File

Beispiel mit drei Diensten - kann beliebig erweitert werden!
Es ist möglich das ganze als geplanten Task mehrfach täglich laufen zu lassen!

Alle laufenden Dienste werden in der service.txt gespeichert und dann wird nach den entsprechnden Diensten darin gesucht.
Ist der Dienst nicht gestartet, dann wir er gestartet und ein Eintrag in die ausfall.txt erstellt mit Uhrzeit und Datum!

Die ausfall.txt wird NICHT überschrieben, sondern alle Fehler werden angehängt!
Die service.txt wird bei jedem Aufruf neu generiert!

@echo off

REM --- alle laufende Dienste in service.txt speichern---
net start > service.txt

REM ------------- Überprüfen ob 1.Dienst läuft --------------
find "Designs" service.txt
if errorlevel 1 goto WEG1
if errorlevel 0 goto OK1

:WEG1
REM --- Dienst neu starten und Datum + Uhrzeit festhalten ---
echo Designs %date% %time% >> ausfall.txt
net start "Designs"
goto OK1
REM ---------------------------------------------------------

:OK1

REM ------------- Überprüfen ob 2.Dienst läuft --------------
find "Hilfe und Support" service.txt
if errorlevel 1 goto WEG2
if errorlevel 0 goto OK2

:WEG2
REM --- Dienst neu starten und Datum + Uhrzeit festhalten ---
net start "Hilfe und Support"
echo Hilfe und Support %date% %time% >> ausfall.txt
goto OK2
REM ---------------------------------------------------------

:OK2

REM ------------- Überprüfen ob 3.Dienst läuft --------------
find "Taskplaner" service.txt
if errorlevel 1 goto WEG2
if errorlevel 0 goto OK3

:WEG2
REM --- Dienst neu starten und Datum + Uhrzeit festhalten ---
net start "Taskplaner"
echo Taskplaner %date% %time% >> ausfall.txt
goto OK3
REM ---------------------------------------------------------

:OK3

goto END

:END
Kategorien: Batch
Tags für diesen Artikel:
“Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.”
Gene Spafford (Sicherheitsexperte)