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

gelöst Datum Formatieren

Mitglied: garciam

garciam (Level 1) - Jetzt verbinden

04.10.2013 um 10:08 Uhr, 1391 Aufrufe, 10 Kommentare, 1 Danke

Hallo zusammen,

Kann mir vielleicht jemand bei diesem Script weiterhelfen. Ich habe folgendes Script zusammenkopiert:
01.
$path     = "C:\Temp\" 
02.
$location = "OU=Test,OU=Users,OU=Firma,DC=Domain,DC=local"  
03.
$csv	  = ".\User.csv" 
04.
$newpath = $path + $csv 
05.
 
06.
Get-QADUser -SearchScope "OneLevel" -SearchRoot $location -Name * -sizelimit 0 -IncludedProperties extensionAttribute3,extensionAttribute6 |  
07.
select-object ` 
08.
@{Name="LoginName";Expression={$_.Initials}}, 
09.
Password, 
10.
ChangeOfPasswordRequired, 
11.
@{Name="LastName";Expression={$_.sn}}, 
12.
FirstName, 
13.
@{Name="Mail";Expression={$_.mail}}, 
14.
@{Name="EmploymentId";Expression={$_.extensionAttribute6}}, 
15.
Status, 
16.
UserType, 
17.
AuthorizationGroup, 
18.
MaxOrgUnit, 
19.
@{Name="Birthday";Expression={$_.extensionAttribute3}}, 
20.
InsuranceNumber, 
21.
MessageReceiver, 
22.
DispatchType | ` 
23.
ForEach-Object { $_.Status = "J"; $_.Password = "123"; $_.ChangeOfPasswordRequired = "Ja"; $_.UserType = "MA"; $_.AuthorizationGroup = "MA"; $_.MaxOrgUnit = "Top"; return $_ } |  
24.
Sort-object -property "LastName"| ` 
25.
Export-CSV $newpath -Force -NoTypeInformation -Delimiter ";" -encoding utf8;
Bei @{Name="Birthday";Expression={$_.extensionAttribute3}} wird das Geburtsdatum im Format Tag.Monat.Jahr ins CSV übergeben. Ich bräuchte das Geburtsdatum aber im Format Jahr-Monat-Tag.

Ich habe es mit Get-Date -Formate yyyy-MM-dd versucht, aber irgendwas mache ich falsch. Kann mir jemand sagen wie ich das am besten anstelle? Vielen Dank!

Gruss
Mitglied: colinardo
04.10.2013, aktualisiert um 10:35 Uhr
Hallo garciam,
mach aus der entsprechenden Zeile 19 mal folgendes:
@{Name="Birthday";Expression={get-date $_.extensionAttribute3 -Format "yyyy-MM-dd"}},
Grüße Uwe
Bitte warten ..
Mitglied: garciam
04.10.2013 um 10:42 Uhr
Hallo Colinardo

Und so easy wäre es Danke vielmals!

Gruss
Bitte warten ..
Mitglied: colinardo
04.10.2013 um 11:06 Uhr
Beitrag bitte noch als gelöst markieren. Merci.
Bitte warten ..
Mitglied: garciam
04.10.2013 um 14:12 Uhr
Ich habe noch ein weiteres Problem, welches ich nicht lösen kann. Bei "AuthorizationGroup" wird das "extensionAttribute7" auf dem Useraccount abgefragt. Bei manchen Useraccounts ist ein Wert in "extensionAttribute7" eingetragen, bei anderen nicht. Nun möchte ich das extensionAttribute7 prüfen und wenn ein Wert eingetragen ist, ein "Vorge" ins CSV schreiben, ansonsten ein "Mitar". Kann mir da noch jemand weiterhelfen, wäre super, danke!
Bitte warten ..
Mitglied: colinardo
04.10.2013 um 14:48 Uhr
01.
if ($($_.extensionAttribute7) -ne "") {echo 'Vorge'}else{echo 'Mitar'}
Bitte warten ..
Mitglied: garciam
04.10.2013, aktualisiert um 15:30 Uhr
Danke! Das müsste ich dann schon unter ForEach-Object einfügen, oder? Es wird nur der ursprüngliche Text ins CSV geschrieben. Der ForEach-Object Teil wird ignoriert, es gibt auch keine Fehlermeldung.
01.
ForEach-Object { $_.Status = "J"; $_.ChangeOfPasswordRequired = "N"; $_.UserType = "MA"; $_.MaxOrgUnit = "Top"; {if ($($_.extensionAttribute7) -ne "") {echo 'Vorge'}else{echo 'Mitar'}}; return $_ }
Bitte warten ..
Mitglied: colinardo
04.10.2013, aktualisiert 07.10.2013
mach es so, die zusätzliche For-Each Schleife ist überflüssig ...
01.
$path     = "C:\Temp\" 
02.
$location = "OU=Test,OU=Users,OU=Firma,DC=Domain,DC=local"  
03.
$csv	  = ".\User.csv" 
04.
$newpath = $path + $csv 
05.
 
06.
$users = Get-QADUser -SearchScope "OneLevel" -SearchRoot $location -Name * -sizelimit 0 -IncludedProperties extensionAttribute3,extensionAttribute6,extensionAttribute7 
07.
$usersChanged = $users | select ` 
08.
@{Name="LoginName";Expression={$_.Initials}}, 
09.
@{Name="Password";Expression={"123"}}, 
10.
@{Name="Status";Expression={"J"}}, 
11.
@{Name="ChangeOfPasswordRequired";Expression={"Ja"}}, 
12.
@{Name="UserType";Expression={"MA"}}, 
13.
@{Name="MaxOrgUnit";Expression={"Top"}}, 
14.
@{Name="LastName";Expression={$_.sn}}, 
15.
FirstName, 
16.
@{Name="Mail";Expression={$_.mail}}, 
17.
@{Name="EmploymentId";Expression={$_.extensionAttribute6}}, 
18.
@{Name="AuthorizationGroup";Expression={if ($($_.extensionAttribute7) -ne "") {echo 'Vorge'}else{echo 'Mitar'}}}, 
19.
@{Name="Birthday";Expression={$_.extensionAttribute3}}, 
20.
InsuranceNumber, 
21.
MessageReceiver, 
22.
DispatchType 
23.
$usersChanged | Sort-object -property "LastName" | Export-CSV $newpath -Force -NoTypeInformation -Delimiter ";" -encoding utf8;
p.s. und mach mal einen Powershell-Kurs, wenn du schon damit hantierst ...
Grüße Uwe
Bitte warten ..
Mitglied: garciam
07.10.2013 um 08:04 Uhr
Guten Morgen

Danke für deinen Vorschlag. Leider funktioniert es noch nicht:

Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die UserType-Eigenschaft bereits vorhanden ist.
Bei C:\User\Script.ps1:14 Zeichen:14

select-object <<<< `

+ CategoryInfo : InvalidOperation: (Domain\test-pu-01:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectC
ommand


p.s. Du hast natürlich recht, mein PowerShell Buch liegt auch bereits auf meinem Schreibtisch und bis ende Jahr habe ich es hoffentlich durch.

Gruss
Bitte warten ..
Mitglied: colinardo
07.10.2013 um 08:18 Uhr
ah sorry, da waren zwei Felder doppelt ausgewählt, typo von mir... ist oben korrigiert.
Grüße Uwe
Bitte warten ..
Mitglied: garciam
07.10.2013 um 11:19 Uhr
Vielen Dank! Nun funktioniert alles.
01.
$path     = "C:\Temp" 
02.
$location = "OU=Test,OU=Users,Ou=Firma,DC=Domain,DC=local"  
03.
$csv	  = ".\User.csv" 
04.
$newpath = $path + $csv 
05.
 
06.
$users = Get-QADUser -SearchScope "OneLevel" -SearchRoot $location -Name * -sizelimit 0 -IncludedProperties extensionAttribute3,extensionAttribute6,extensionAttribute7 
07.
$usersChanged = $users | select ` 
08.
@{Name="LoginName";Expression={$_.Initials}}, 
09.
@{Name="Password";Expression={"123"}}, 
10.
@{Name="ChangeOfPasswordRequired";Expression={"N"}}, 
11.
@{Name="LastName";Expression={$_.sn}}, 
12.
FirstName, 
13.
@{Name="Mail";Expression={$_.mail}}, 
14.
@{Name="EmploymentId";Expression={"0-"+$_.extensionAttribute6}}, 
15.
@{Name="Status";Expression={"J"}}, 
16.
@{Name="UserType";Expression={"MA"}}, 
17.
@{Name="AuthorizationGroup";Expression={if ($($_.extensionAttribute7) -match "\w") {echo 'Vorge'}else{echo 'Mitar'}}}, 
18.
@{Name="MaxOrgUnit";Expression={"Top"}}, 
19.
@{Name="Birthday";Expression={get-date $_.extensionAttribute3 -Format "yyyy-MM-dd"}}, 
20.
InsuranceNumber, 
21.
MessageReceiver, 
22.
DispatchType 
23.
$usersChanged | Sort-object -property "LastName" | Export-CSV $newpath -Force -NoTypeInformation -Delimiter ";" -encoding utf8;
Gruss
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Feld in Datum formatieren - bat
Frage von jochengBatch & Shell8 Kommentare

Hallo Leute ich bin neu hier und auf der Suche nach Hilfe. Ich habe folgendes Problem mit einer CSV ...

Perl

Perl Text Datei in Excel einlesen Spalte als Datum formatieren

Frage von bluepythonPerl

Hallo, in einem Perl-Script starte ich eine Datenbankabfrage, das Ergebniss wird mir in eine Textdatei geschrieben. Diese Textdatei wird ...

Peripheriegeräte

Diskettenlaufwerk formatieren

Frage von beamenwaerschoenPeripheriegeräte7 Kommentare

Hallo, Ich hatte über Jahre mein eingebautes Floppy-Laufwerk im BIOS deaktiviert, weil nicht benötigt. Nun brauche ich es wieder, ...

Batch & Shell

Excel mit Powershell formatieren

Frage von TastuserBatch & Shell13 Kommentare

Hallo, ist es möglich eine Excel-Datei mit Powershell zu formatieren? - Bestimmte Zellen bekommen eine bestimmte Größe - Bestimmte ...

Neue Wissensbeiträge
Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 18 StundenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 1 TagSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 1 TagMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 1 TagHardware12 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux27 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++23 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless21 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL18 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...