Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VBS ausgabe in der Textdatei Ausrichten, Formatieren

Mitglied: u0206084

u0206084 (Level 1) - Jetzt verbinden

06.03.2007, aktualisiert 09.03.2007, 8585 Aufrufe, 5 Kommentare

Hallo

Ich lese anhand folgenden Scriptes das AD aus und leite die Ausgabe in eine Textdatei um, leider ist die Ausgabe nicht bündig untereinander sondern verschoben. Wer kann mir helfen die Ausrichtung des Textes anzupassen.

Mein Script:

strDom = "Rm1.dom"
Const FRIST =14

Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000

Set objDomainNT = GetObject("WinNT://" & strDom)
intMaxPwdAge = objDomainNT.Get("MaxPasswordAge")
If intMaxPwdAge <= 0 Then
WScript.Echo "Max Passwortalter ist 0, Passwörter laufen nicht ab!"
WScript.Quit
End If
intMaxPwdAge = Int(intMaxPwdAge / 86400)


Set oGroup = GetObject("WinNT://" & strDom & "/Domain Users")


For Each oObject In oGroup.Members


Set oUser = GetObject(oObject.ADsPath)
intCurrentValue = oUser.UserFlags
If intCurrentValue and ADS_UF_DONT_EXPIRE_PASSWD Then
'WScript.Echo oUser.Name & ": Passwort läuft niemals ab."
Else
intPasswordAge = oUser.PasswordAge
dtmChangeDate = DateAdd("s", -intPasswordAge, Now)
'WScript.Echo oUser.Name & ": Passwort zuletzt geändert: " & dtmChangeDate
intExpire = DateDiff("d", Now, dtmChangeDate) + intMaxPwdAge
If intExpire <= 0 Then 'abgelaufen
strMessage = oUser.Name & ": abgelaufen - Tage: " & -intExpire
ElseIf intExpire <= FRIST Then 'demnächst
strMessage = "Passwort des Benutzer" & vbtab & oUser.Name & vbtab &"("& oUser.Fullname &")" & vbTab & vbTab &"laueft in " & intExpire & " Tagen ab"& vbCRLF
WScript.Echo strMessage

End If



End If
Next
Mitglied: bastla
06.03.2007 um 16:25 Uhr
Hallo u0206084!

Du könntest die beiden Functions "FormL" und "FormR" dazu verwenden, einen String links- oder rechtsbündig ausgerichtet mit Leerstellen auf eine bestimmte Länge zu ergänzen - für eine vernünftige Darstellung des Ergebnisses ist aber ein Font mit einer fixen Breite (à la "Courier New" erforderlich).

Zusammen mit einer kleinen Demo sähe das so aus:
01.
'FormatDemo.vbs 
02.
For i = 1 To 20 
03.
	L = FormL(String(i, "X"), 20) 
04.
	R = FormR(String(i, "0"), 20) 
05.
	WScript.Echo L & "|" & R 
06.
Next 
07.
 
08.
 
09.
Function FormL(EinText, Stellen) 
10.
If Stellen > Len(EinText) Then 
11.
	FormL = Left(EinText & Space(Stellen), Stellen) 
12.
Else 
13.
	FormL = EinText 
14.
End If 
15.
End Function 
16.
 
17.
Function FormR(EinText, Stellen) 
18.
If Stellen > Len(EinText) Then 
19.
	FormR = Right(Space(Stellen) & EinText, Stellen) 
20.
Else 
21.
	FormR = EinText 
22.
End If 
23.
End Function
Grüße
bastla

[Edit] Die Demo ist natürlich für eine Verwendung per Commandline, also etwa "cscript //nologo FormatDemo.vbs > FormatDemo.txt" gedacht ... [/Edit]
Bitte warten ..
Mitglied: u0206084
08.03.2007 um 09:58 Uhr
Hallo bastla,
nett das du mir schon wieder versuchst zu helfen, leider habe ich keine ahnung wie ich dein Script in das obige inplementieren kann.

aAso wenn du Zeit und Lust hast wäre ich dir dankbar.

Gruß
Bitte warten ..
Mitglied: Biber
08.03.2007 um 11:11 Uhr
Moin u02060084,

01.
strDom = "Rm1.dom" 
02.
Const FRIST =14 
03.
 
04.
Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000 
05.
 
06.
Set objDomainNT = GetObject("WinNT://" & strDom) 
07.
intMaxPwdAge = objDomainNT.Get("MaxPasswordAge") 
08.
If intMaxPwdAge <= 0 Then 
09.
    WScript.Echo "Max Passwortalter ist 0, Passwörter laufen nicht ab!" 
10.
    WScript.Quit 
11.
End If 
12.
intMaxPwdAge = Int(intMaxPwdAge / 86400) 
13.
 
14.
Set oGroup = GetObject("WinNT://" & strDom & "/Domain Users") 
15.
 
16.
For Each oObject In oGroup.Members 
17.
 
18.
     Set oUser = GetObject(oObject.ADsPath) 
19.
     intCurrentValue = oUser.UserFlags 
20.
     If intCurrentValue and ADS_UF_DONT_EXPIRE_PASSWD Then 
21.
         'WScript.Echo oUser.Name & ": Passwort läuft niemals ab." 
22.
     Else 
23.
         intPasswordAge = oUser.PasswordAge 
24.
         dtmChangeDate = DateAdd("s", -intPasswordAge, Now) 
25.
         'WScript.Echo oUser.Name & ": Passwort zuletzt geändert: " & dtmChangeDate 
26.
         intExpire = DateDiff("d", Now, dtmChangeDate) + intMaxPwdAge 
27.
         If intExpire <= 0 Then 'abgelaufen 
28.
            strMessage = Pad( oUser.Name, 15) & ": abgelaufen - Tage: " & -intExpire 
29.
         ElseIf intExpire <= FRIST Then 'demnächst 
30.
           strMessage = "Passwort des Benutzer" & vbtab & Pad(oUser.Name, 15) & _  
31.
             vbtab &"("& Pad(oUser.Fullname, 25) &")" & vbTab & vbTab &"laueft in " & Pad(intExpire, 2) & " Tagen ab"& vbCRLF 
32.
              WScript.Echo strMessage 
33.
 
34.
          End If 
35.
 
36.
     End If 
37.
Next 
38.
Wscript.quit() 
39.
Function Pad( EinString, Fixlen) 
40.
   Pad = Left( cStr(EinString) & Space(FixLen), FixLen) 
41.
End Function
[ungetestete Skizze]

Gruss
Biber
Bitte warten ..
Mitglied: bastla
08.03.2007 um 14:17 Uhr
@Biber

Die Function würde vielleicht besser "PadOrCut()" heißen - oder auch "Procrustes()" ...

Grüße
bastla
Bitte warten ..
Mitglied: u0206084
09.03.2007 um 15:42 Uhr
Vilen Danke für euere Hilfe hat Prima geklappt.

Danke
Bitte warten ..
Ähnliche Inhalte
Python
Python - ausgabe formatieren
Frage von BadFsaadKlPython

Hallo zusammen, ich habe ein kleines Python Script geschrieben, welches als Ziel hat, mir alle Verfügbaren Lunix Updates anzuzeigen, ...

Windows Server
Powershell Ausgabe formatieren
gelöst Frage von makaroniWindows Server16 Kommentare

Guten Morgen zusammen, ich lesen aus einer Active Directory via Powershell User aus einer Gruppe aus und speicher diese ...

VB for Applications

VBS-Entfernen von Zeilen in einer Textdatei

Frage von Calim3roVB for Applications5 Kommentare

Hallo zusammen Ich möchte aus einer Textdatei Zeilen entfernen. Ich habe drei Dateien, in Datei "A" stehen Wörter, in ...

Batch & Shell

VBS Script in eine Textdatei ausgeben (VBS mit Batch zusammenführen)

gelöst Frage von Luuke257Batch & Shell5 Kommentare

Hallo zusammen! Vorweg, ich bin absoluter neuling im Scripten, ich habe mir das alles nur so zusammengebastelt und versuche ...

Neue Wissensbeiträge
Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 12 StundenSicherheit

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 22 StundenInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 1 TagErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 1 TagWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Heiß diskutierte Inhalte
Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server36 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1028 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgbornMicrosoft17 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Webbrowser
Welcher Browser ist der Beste?
Frage von justtinWebbrowser15 Kommentare

Hallo Leute Ich habe eine interessante Frage. Mich wurde mal interessieren welcher Browser ist eure meinung nach der beste? ...