Jump to content

Script - DNS Info in


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hi, ich habe hier ein Script welches mir DNS-Daten in eine Excel Datein exportieren soll...auf dem DC ist allerdings kein Excel installiert !!

 

Wer kann mir dsa Script kurzerhand so umbauen, dass es das Excelfile speichert und nicht versucht direkt zu öffnen ?

 

Danke für jede Hilfe!

 

Edit:

 

Const ForReading = 1
Const ForWriting = 2
strfile= wscript.Arguments(0)

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(strfile, ForReading)

Do Until objFile.AtEndOfStream
   strLine = objFile.ReadLine
If not strLine = "" Then
   arrItems = Split(strLine, ",")

intDatevalue = 0

If not(arrItems(1))="" Then

   intDateValue = (arrItems(1) - 2620914.50)/24
End if

   intItems = Ubound(arrItems)
   ReDim Preserve arrItems(intItems + 1)
   If intDateValue > 0 Then
       arrItems(intItems + 1) = intDateValue
   Else
       arrItems(intItems + 1) = ""
   End If
   strNewLine = Join (arrItems, ",")
   strNewText = strNewText & strNewLine & vbCrLf
End If 
Loop

objFile.Close

Set objFile = objFSO.OpenTextFile(strfile, ForWriting)
objFile.Write strNewText
objFile.Close

Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True

Set objWorkbook = objExcel.Workbooks.Open(strfile)
Set objRange = objExcel.Cells(1, 6)
Set objRange = objRange.EntireColumn

objRange.NumberFormat = "m/d/yyyy hh:mm:ss AM/PM"

openexcel.txt

Link zu diesem Kommentar

Moin,

 

wenn ich es richtig sehe, konvertiert dein Skript eine CSV-Datei in eine weitere CSV-Datei, importiert diese dann in ein Excel-Sheet und führt eine Formatierung durch. Das geht nur mit installiertem Excel.

 

Bevor du nun aber Excel auf dem DC installierst: Was spricht dagegen, das Skript auf einem Client auszuführen?

 

Gruß, Nils

Link zu diesem Kommentar

Okey, mein Fehler !!

 

Ich poste mal den *** Link zu der ganzen Geschichte, um das alles mal ein bischen verständlicher zu machen !

 

Es geht um das Auslesen von DNS Daten !

 

Microsoft Enterprise Networking Team : Export DNS records to Excel to read time stamps and static records

 

 

Desweiteren geht es um einen Rettungs USB-Stick, den man im Notfall irgendwo einstecken kann um sich diese Daten zu holen...der Stick ist fertig (PStart) nur dieses Script zur Ausführung fehlt noch !

 

Es soll auf dem DC liegen, so dass man es per .bat vom USB-Stick aus starten kann !

 

Die .bat für den Stick habe ich schon fertig, die führt per psexecwiederum eine .bat auf dem Server aus, welche folgende Befehle enthält:

 

dnscmd /enumrecords awo.internal @ /Type A /additional>c:\dnsdata\dns.csv

 

changetocsv.vbs dns.csv

 

openexcel.vbs c:\dnsdata\dns.csv

 

Die Befehle werden alle auf der Website erläutert !

 

Hoffe, das ganze ist nun ein bischen verständlicher, sry

 

Gruß

Link zu diesem Kommentar

Moin,

 

es geht dir darum, die Datumswerte lesbar zu machen, richtig? Dafür brauchst du kein Excel, das wirst du mit ein bisschen Grips auch mit dem Log Parser hinkriegen. Der hat den Vorteil, dass du ihn auch mit auf den Stick packen kannst (irgendwo einmal installieren und dann das Programmverzeichnis auf den Stick kopieren).

 

Download details: Log Parser 2.2

 

Gruß, Nils

Link zu diesem Kommentar

Hm das Script liest mir auch die IP-Adressen und die Namen aus, das ist es worum es geht, ich muss gestehen dass ich ein wenig faul war und dachte, als ich das Ergebnis bei Google sah, kannst ja mal nehmen....Die Sache mit dem Datum interessiert mich eigentlich garnicht !

Nur die IP-Adressen und der Name !

 

Gruß & Danke !

Edit: Wie ich gerade sehe, liest er die Daten auch aus und speichert sie dann in der der dns.csv ab !

Wäre da nun ein Excel würde er die wohl auch öffnen, so hat man ne Datei die mit dem Texteditor geöffnet wird.

 

Jetzt wäre es natürlich praktischer wenn man das openexcel.vbs script so ummodeln könnte, dass es garnicht versucht excel zu öffnen sondern nur die Datei speichert. Auf die könnte man dann einfach eine Verknüpfung bauen um sie zu öffnen

Link zu diesem Kommentar

Moin,

 

na, das ist ja nun einfach:

 

Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True

Set objWorkbook = objExcel.Workbooks.Open(strfile)
Set objRange = objExcel.Cells(1, 6)
Set objRange = objRange.EntireColumn

objRange.NumberFormat = "m/d/yyyy hh:mm:ss AM/PM"

 

Lösche diese Zeilen. Fertig.

 

Gruß, Nils

Link zu diesem Kommentar
  • 2 Wochen später...
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...