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

Output in das richtige Format bringen...

Mitglied: mguenth83

mguenth83 (Level 1) - Jetzt verbinden

17.09.2013, aktualisiert 22:07 Uhr, 1818 Aufrufe, 3 Kommentare

Hi,
ich habe folgendes vor. Ich möchte alle Benutzer aus dem AD lesen und diese mit Benutzername, Vorname und Name in ein bestimmtes Format bringen.
Das Format soll sein benutzername = Vorname, Nachname

Im Moment bekomme ich nur eine Liste mir den drei Werten und muss jetzt diese in das oben genannte Format konvertieren.
Hat da jemand eine Idee ?
01.
$users = Get-AdUser -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Filter * | Select-Object SamAccountName,GivenName, Surname
Ausgabe komm wie folgt...

01.
SamAccountName          GivenName              Surname                                      
02.
--------------          --------                 -------                                      
03.
Testuser1               TestVorname           TestNachname                                       
Hoffe jemand kennt sich aus, ich bin in Sachen Powershell der absolute Newbie
Mitglied: colinardo
17.09.2013, aktualisiert um 22:44 Uhr
Moin mguenth83,
01.
Get-AdUser -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Filter * | %{echo "$($_.SamAccountName) = $($_.GivenName), $($_.Surname)"}
Grüße Uwe
Bitte warten ..
Mitglied: mguenth83
18.09.2013 um 09:28 Uhr
Super hat geklappt...
hier mal das ganze Script

01.
$Name=Get-AdUser -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Filter * | %{echo "$($_.SamAccountName) = $($_.GivenName), $($_.Surname)"}
02.
$Location=Get-AdUser -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Properties * -Filter * | %{echo "$($_.SamAccountName) = $($_.physicalDeliveryOfficeName)"}
03.
$Name | Out-File C:\Temp\Name.txt
04.
$Location | Out-File C:\Temp\Location.txt
05.
$File1=get-content C:\Temp\Name.txt
06.
$File1.Replace(" ",$null) | Out-File C:\Temp\Name.txt
07.
$File2=get-content C:\Temp\Location.txt
08.
$File2.Replace(" ",$null) | Out-File C:\Temp\Location.txt
Bei deiner Variante waren noch diverse Leerzeichen drin die raus mussten daher habe ich noch was hinzugefügt.

Weisst Du zufällig noch wie ich den $_.physicalDeliveryOfficeName in Anführungszeichen setzen kann?
Achso und kannst du mir das mal mit dem echo erklären, weiss nämlich nicht so ganz wie das funktioniert
Bitte warten ..
Mitglied: colinardo
18.09.2013, aktualisiert um 09:59 Uhr
Zitat von mguenth83:
Bei deiner Variante waren noch diverse Leerzeichen drin die raus mussten daher habe ich noch was hinzugefügt.
die kannst du direkt vor Ort entfernen:
$Name=Get-AdUser -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Filter * | %{echo "$($_.SamAccountName)=$($_.GivenName),$($_.Surname)"}
Du brauchst zum entfernen der Leerzeichen das ganze nicht erst in eine Datei schreiben. Dazu kannst du folgendes Konstrukt benutzen: (aber das brauchst du ja nicht mehr wenn du es wie oben beschrieben formatiert hast)
$Location | %{$_.Replace(" ",$null)}
Weisst Du zufällig noch wie ich den $_.physicalDeliveryOfficeName in Anführungszeichen setzen kann?
Ändere diesen Teil so ab (beachte das umgekehrte Hochkomma vor den Anführungszeichen)
%{echo "$($_.SamAccountName) = `"$($_.physicalDeliveryOfficeName)`""} 
Achso und kannst du mir das mal mit dem echo erklären, weiss nämlich nicht so ganz wie das funktioniert
Also das mit echo bzw. write-host läuft so: Zuerst ist da das %{} indem das ganze eingeschlossen ist, dies ist ein Alias für das CMDLet foreach-Object es bewirkt also das alles was in den Geschweiften Klammer ist, für alle Objekte in der Pipe ausgeführt wird. Den Inhalt der echo-Zeile schließe ich mit Anführungszeichen ein um alles in einer Zeile ohne Zeilenumbrüche zu halten. In doppelten Anführungszeichen werden Variablen auch noch expandiert, da wir aber eine Property von dieser Variablen abfragen müssen wird dies zusätzlich noch in ein $() packen (Expression). Das $_ ist das aktuelle Objekt das in der Pipe übergeben wird.
Wenn du anstatt normalen Anführungszeichen bei echo "einfache" benutzt, wird alles dazwischen als String interpretiert und keinerlei Variable expandiert.
Beispiel:
echo 'Das ist eine nicht expandierte Variable: $test'
wird zu
Das ist eine nicht expandierte Variable: $test
Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Bring your own device absichern
Frage von MimemmmWindows Netzwerk18 Kommentare

Hallo ich habe aktuell das Problem, dass ich in einem kleinen Unternehmen(30Mitarbeiter) BYOD(Bring your own device) sicher umsetzen soll. ...

Windows Tools
Powershell output auf neue Linie
gelöst Frage von adminstWindows Tools1 Kommentar

Hallo zusammen Ich möchte gerne meine Clients auf die Spectre/Meltdown lücken testen mit dem Skript von MS. Die Hosts ...

Batch & Shell
Diskpart.exe output in Textdatei per CMD
gelöst Frage von gabrixlBatch & Shell7 Kommentare

Hallo Zusammen Ich möchte den Output von DETAIL DISK in eine Textdatei schreiben. Mein Ansatz ist wie folgt: Script: ...

Microsoft Office
Outlook Format Kalendereinladungen
Frage von anak1mMicrosoft Office

Hallo zusammen, ich habe folgendes Problem: Wenn ich mit Outlook 2013 eine Besprechungseinladung versende, so erhalte ich in einem ...

Neue Wissensbeiträge
Humor (lol)
Administrator.de Perlen
Tipp von DerWindowsFreak2 vor 4 TagenHumor (lol)6 Kommentare

Hallo, Heute beim stöbern auf dieser Seite bin auf folgenden Thread aus dem Jahre 2006 gestossen: Was meint ihr? ...

Erkennung und -Abwehr
OpenSSH-Backdoor Malware erkennen
Tipp von Frank vor 5 TagenErkennung und -Abwehr

Sicherheitsforscher von Eset haben 21 Malware-Familien untersucht. Die Malware soll Hintertüren via OpenSSH bereitstellen, so dass Angreifer Fernzugriff auf ...

iOS
WatchChat für Whatsapp
Tipp von Criemo vor 8 TageniOS5 Kommentare

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor!
Tipp von Criemo vor 9 TageniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Heiß diskutierte Inhalte
Samba
Windows 10 Client in Samba-Domäne hinzufügen scheitert
Frage von diwaffmSamba31 Kommentare

Hi Leute, ich habe einen Samba Server in der Version 4.9.3 auf einer OpenSuse Maschine laufen. Damit sind momentan ...

Windows Systemdateien
Verknüpfungen nach Pfadwechsel
Frage von Hendrik2586Windows Systemdateien17 Kommentare

Guten Morgen meine lieben Kollegen und Kolleginnen, ich hab da mal eine Frage die Ihr sicher schon kennt. Es ...

Batch & Shell
CMD-Fenster nach Task schließen
gelöst Frage von Hyperlink.93Batch & Shell16 Kommentare

Hallo, ich habe ein Skript was über einen Task bei jeder User Anmeldung läuft. Der Task startet eine CMD ...

Netzwerkmanagement
Sehr langsame Netzverbindung in einem bestimmten Subnet
gelöst Frage von gabeBUNetzwerkmanagement15 Kommentare

Hallo Zusammen Ich habe das folgende Problem: Unser Netzwerk, dass aus verschiedenen Subnetzwerken aufgebaut ist, ist nicht in jedem ...