' VERBRAUCH:
'cscript getmacinfo.vbs /s: /l:
'
'/s kommen die Position der Quellakte, die Computerbezeichnungen und/oder IP address enthält. Z.B.; /s: „c:\Temp\my file.txt“
'/l kommen die Position der Protokolldatei. Z.B.; /l: „C:\Temp\my-Maschinenbordbuch file.txt“
'
'Beispiel:
'cscript getmacinfo.vbs /s: „c:\Temp\my file.txt“ /l: „C:\Temp\my-Maschinenbordbuch file.txt“
'
'ANMERKUNGEN:
'Eigenschaften dieses Indexes;
'Dieser Index öffnet eine Akte, die Computerbezeichnungen und/oder IP address enthält.
'Der Index laufen lässt das Befehl getmac gegen jede Linie Einzelteil von der Akte.
'Eine Protokolldatei hergestellt mit dem Ausgang t.
Schwache colNamedArguments
Schwaches strSource
Schwaches strLog
'Prüfen, ob der Index unter cscript läuft
checkforcscript ()
'Argumente von der Befehlszeile erhalten
colNamedArguments = WScript.Arguments.Named einstellen
strSource = colNamedArguments.Item („s“)
strLog = colNamedArguments.Item („L“)
'Auf Hilfetaste überprüfen
wenn WScript.Arguments.Named.Exists („? ") ODER WScript.Arguments.Named.Exists („h“) dann
FoundError („ArgumentNotFound“)
wscript.quit 1
beenden wenn
wenn strSource = "" ODER strLog = "" dann
FoundError („ArgumentNotFound“)
wscript.quit 1
beenden wenn
ReadFileAndExecuteScript ()
VorReadFileAndExecuteScript ()
'Die Quellakte öffnen und alle Linien innen lesen
objFSORead = CreateObject („scripting.filesystemobject“) einstellen
objReadFile einstellen = objFSORead.OpenTextFile (strSource, 1)
strContents = objReadFile.ReadAll
arrLines = aufspalteten (strContents, vbCRLF)
objReadFile.Close
'Herstellen eine neue Akte , die die umgewandelte CSV Akte ist
objFSOWrite = CreateObject („Scripting.FileSystemObject“) einstellen
objFile einstellen = objFSOWrite.OpenTextFile (strLog, 2, zutreffendes)
für jedes strTarget in den arrLines
WshShell = WScript.CreateObject („WScript.Shell“) einstellen
WshExec = WshShell.exec („getmac /S“ u. strTarget u. „/FO CSV /NH ") einstellen
'warten, dass getmac beendet
tun während WshExec.Status = 0
wscript.sleep 100
Schleife
'Ausgang zur Protokolldatei schreiben
Tun, während nicht (WshExec.StdOut.AtEndOfStream)
strResults = WshExec.StdOut.ReadLine
objFile.WriteLine """" u. strTarget u. """, „u. strResults
Schleife
zunächst
objFile.Close
Enden-Unterseeboot
Vorcheckforcscript ()
'Wenn laufend nicht, unter cscript, Wiederankurbelung using Befehlszeile
oShell = CreateObject („Wscript.Shell“) einstellen
Wenn nicht WScript.FullName = wscript. Weg u. „\ cscript.exe“ dann
oShell.Popup „gestartet using wscript. Wieder ankurbeln…“, 3, „WSCRIPT“
oShell.Run „cmd.exe /k“ u. wscript. Weg u. „\ cscript.exe //NOLOGO“ u. Chr (34) u. wscript.scriptFullName u. Chr (34) u. „/? “, 1, falsch
wscript.quit
Beenden wenn
Unterseeboot beenden
Sub FoundError (sCase)
'Fehlermeldungen
Fall sCase vorwählen
„ArgumentNotFound“ umkleiden
wscript.echo „cscript getmacinfo.vbs /s: /l: “
wscript.echo ""
wscript.echo „/s kommen die Position der Quellakte, die enthält Computerbezeichnungen und/oder“
wscript.echo „IP address.“
wscript.echo „zum Beispiel; /s: "" c:\Temp\my file.txt """
wscript.echo „/l kommen die Position der Protokolldatei.“
wscript.echo „zum Beispiel; /l: "" C:\Temp\my-Maschinenbordbuch-file.txt """
wscript.echo ""
wscript.echo „Beispiel: “
wscript.echo „cscript getmacinfo.vbs /s: "" c:\Temp\my file.txt "" /l: "" C:\Temp\my-Maschinenbordbuch-file.txt """
Ende auserwählt
Enden-Unterseeboot
Toggle-HighlightingOpen in neuem WindowSelect alles
|