Kuddel071089
-
Gesamte Inhalte
557 -
Registriert seit
-
Letzter Besuch
Beiträge erstellt von Kuddel071089
-
-
vor 8 Minuten schrieb testperson:
Hi,
füge doch am Anfang der Schleife ein "switch" Statement (about Switch - PowerShell | Microsoft Learn / Everything you ever wanted to know about the switch statement - PowerShell | Microsoft Learn) ein und setze da die Farbe in eine Variable "$meinetollefarbe". Dann hast du im Code:
<td bgcolor="$meinetollefarbe">$Status</td>
Gruß
Jan
Hallo Jan, danke für den Tip. Das setzen der Hintegrundfarbe funktioniert jetzt.Allerdings sind jetzt in der Tabelle alle Linien außer die äußeren weg.
-
Die Daten kommen aus einer CSV Datei
#Tabelle importieren $tasks = Import-CSV -Path $csvfile -Delimiter ";" #Daten aus Tabelle in Vars für Tabelle im Mailbody schreiben foreach($task in $tasks) { #Variablen definieren $servername = $task.Server $funktion = $task.Funktion $typ = $task.Typ $status = $task.Status $task_ergebnis = $task.Task #Daten in Variable für Tabelle $datarow = " </tr> <td>$servername</td> <td>$funktion</td> <td>$typ</td> <td>$status</td> <td>$task_ergebnis</td> </tr> " $table += $datarow }
Wie genau müsste ich jetzt die Zeile "<td>$status</td>" umbauen?
-
Hallo zusammen,
ich würde gerne in einer Tabelle in einem Mailboy die Schriftfarbe bzw. den Hintergrund der Zeile ändern, wenn der Wert in der Spalte "Status" gleich "ERROR" ist.
Die Mail und die Tabelle wird per Pwoershell erzeugt.
$mailbody = "<html> <style> {font-family:Calibir; font-size: 11pt;} TABLE{border: 1px solid black; border-collapse: collapse; font-size:11pt;} TH{border: 1px solid black; background: #dddddd; padding: 5px; color: #000000;} TD{1px solid black; padding: 5px} </style> <table> <tr> <th>Servername</th> <th>Funktion</th> <th>Task-Typ</th> <th>Status</th> <th>Task-Ergebnis</th> </tr> $table </table> <tr> <br/> <br/> <br/> Skriptversion: $version "
Kann mir jemand helfen?
-
Habe den Fehler gefunden.
Die Verwednung von
Remove-Variable * -Confirm:$false
war nicht ganz so clever :-D
Da wurde nicht nur die im Skript erstellten Variablen gelöscht.
- 1
-
vor 24 Minuten schrieb BOfH_666:
Da der Ordner "...AppData\Local\Temp\..." ist, würde ich die PS-Konsole schließen und ihn einfach löschen und nochmal probieren. ¯\_(ツ)_/¯
Habe den kompletten Ordner "Temp" geleert.
Bei Ausführung des Skripts wird dann "Temp\4\tmpEXO_k533eu4n.m0g" erstellt und der Fehler erscheint wieder.
-
vor 4 Minuten schrieb cj_berlin:
Execution Policy?
Unrestricted
-
Hallo zusammen,
ich schreibe gerade ein Skript, dass Vollzugriff auf mehrere Exchange Online Postfächer vergeben soll. Leider bekomme ich immer diese Fehlermeldung:
Die Manifestdatei "C:\Users\Admin-******\AppData\Local\Temp\4\tmpEXO_xdzcxy2f.qcw\tmpEXO_xdzcxy2f.qcw.psd1" kann nicht aktualisiert werden, da das Manifest ungültig ist. Stellen Sie sicher, dass die Manifestdatei gültig ist, und versuchen Sie es dann erneut."Die Variable "$VerbosePreference" kann nicht abgerufen werden, weil sie nicht festgelegt wurde." In C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\3.2.0\netFramework\ExchangeOnlineManagement.psm1:743 Zeichen:21 + throw $_.Exception; + ~~~~~~~~~~~~~~~~~~ + CategoryInfo : OperationStopped: (:) [], ArgumentException + FullyQualifiedErrorId : Die Manifestdatei "C:\Users\Admin-******\AppData\Local\Temp\4\tmpEXO_xdzcxy2f.qcw\tmpEXO_xdzcxy2f.qcw.psd1" kann nicht aktualisiert werden, da das Manif est ungültig ist. Stellen Sie sicher, dass die Manifestdatei gültig ist, und versuchen Sie es dann erneut."Die Variable "$VerbosePreference" kann nicht abgerufen werden, weil sie ni cht festgelegt wurde."
Das Skript läuft auf unserem Admin-Server (Windows Server 2016 / Powershell 5.1 / EXO Management 3.2.0).Wenn meine Kollegen es starten, läuft es ohne Fehler durch.
Das Löschen meines Profils auf dem Server hat auch nichts gebracht.
Kann jemand helfen?
-
@testperson ah super. Das hat gefehlt. Vielen Dank
-
Hallo zusammen,
ich würde gern per Powershell alle O365 SharePoint personal Sites auflisten.
Hintergrund: Die Sites werde nicht direkt gelöscht, wenn ein User deaktiviert wird. Veeam will diese Site dann sichern, aber wirft eine Warnung aus, dass die Site keinen User hat. Daher würde ich alle personal Site ohne Owner automatisch im Veeam Job ausklammern.
Beispielpfad:
https://****cloud-my.sharepoint.com/personal/mustermann_****_de
Aktuell kann ich nur die oberste Ebene abfragen und bekomme nicht die Sites selber augelistet
Connect-SPOService -Url https://****cloud-admin.sharepoint.com Get-SPOSite "https://****cloud-my.sharepoint.com/"
mit /personal kommt keine Auswertung mehr
Get-SPOSite "https://****cloud-my.sharepoint.com/personal/" Get-SPOSite : Die Website "https://****cloud-my.sharepoint.com/personal/" weist keine ordnungsgemäße Form auf.
Vielen Dank schon einmal
-
Die Berechtigungen werden direkt auf eine Unter-OU delegiert ja. Diese Unter-OU hat auch andere Berechtigungen von oben geerbt, wo aber nichts gesperrt (deny) ist.
-
Hallo zusammen,
ich habe zwei neue AD Gruppen erstellt, deren Mitglieder zum einen Computerobjekte und zum anderen Gruppen anlegen dürfen.
Welche Berechtigungen benötigten sie, um "protectedFromAccidentalDeletion" zu aktivieren?
Selbst "Vollzugriff" auf alle untergeordneten Computerobjekte / Gruppen in den jweiligen OUs reicht nicht.
Vielen Dank schon einmal
-
@Dukel wie genau meinst du das mit dem Sortieren?
Gruppieren nach Server und dann sortieren nach Datum ?Ich komme leider gerade immer noch nicht weiter
-
Hallo zusammen,
ich habe ein Array, das aus folgenden Infos besteht:
Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : DC2 Funktion : DC2 Ausstehende Updates : 0 Letzte Installation : 02.05.2023 Letzte_Installation_formatiert : 2023-05-02 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : DC2 Funktion : DC2 Ausstehende Updates : 2 Letzte Installation : 04.04.2023 Letzte_Installation_formatiert : 2023-04-04 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : DC2 Funktion : DC2 Ausstehende Updates : 2 Letzte Installation : 04.04.2023 Letzte_Installation_formatiert : 2023-04-04 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : DC2 Funktion : DC2 Ausstehende Updates : 2 Letzte Installation : 04.04.2023 Letzte_Installation_formatiert : 2023-04-04 Servername : EX1 Funktion : Exchange-1 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : EX2 Funktion : Exchange-2 Ausstehende Updates : 3 Letzte Installation : 22.03.2023 Letzte_Installation_formatiert : 2023-03-22 Servername : DC2 Funktion : DC2 Ausstehende Updates : 2 Letzte Installation : 04.04.2023 Letzte_Installation_formatiert : 2023-04-04
Jetzt würde ich gerne für jeden Server das aktuellste Installationsdatum herausbekommen.
Sortieren nach Datum funzt:
Sort-Object $_.Letzte_Installation_formatiert -Descending
Nur wie bekomme ich es jetzt hin, dass für jeden Server nur ein Datum angezeigt wird ?
-
vor 19 Minuten schrieb testperson:
Hi,
du kannst im Nachgang die HTML Datei nochmal einlesen und zeilenweise durchgehen und dabei dann einfach den passenden HTML Code für Links ergänzen.
Gruß
Jan
Ah guter Ansatz, werde ich mal testen..
EDIT:@testperson hat geklappt.
Am Ende habe ich jetzt folgendes eingeführt
(Get-Content C:\VMware_vCenter_Uebersicht.html) | ForEach-Object {$_ -replace "https://vcenter_1.****.de/ui/", '<a href="https://vcenter_1.****.de/ui/">vCenter-1</a>'} | Set-Content C:\VMware_vCenter_Uebersicht.html (Get-Content C:\VMware_vCenter_Uebersicht.html) | ForEach-Object {$_ -replace "https://vcenter_2.****.de/ui/", '<a href="https://vcenter_2.****.de/ui/">vCenter-2</a>'} | Set-Content C:\VMware_vCenter_Uebersicht.html (Get-Content C:\VMware_vCenter_Uebersicht.html) | ForEach-Object {$_ -replace "https://vcenter_3.****.de/ui/", '<a href="https://vcenter_3.****.de/ui/">vCenter-3</a>'} | Set-Content C:\VMware_vCenter_Uebersicht.html (Get-Content C:\VMware_vCenter_Uebersicht.html) | ForEach-Object {$_ -replace "https://vcenter_4.****.de/ui/", '<a href="https://vcenter_4.****.de/ui/">vCenter-4</a>'} | Set-Content C:\VMware_vCenter_Uebersicht.html
-
Hallo zusammen,
ich habe bei uns einen CSV-Export gebaut, der alle virtuellen Maschinen auflistet und das entsprechende VMware vCenter dazu.
Das Konvertieren zu einer HTML Seite, um die Infos im Brwoser anzeigen zu lassen, hat ohne Probleme geklapt.
Leider scheitere ich daran, dass die Links zu den vCenter als Hyperlink dargestellt werden.
Wie genau bekommen ich das hin?
Im CSV-Export ist in der Spalte Link z.B. der Wert "https://vcenter_1.xxxxxx.de/ui" hinterlegt.
Dieser Wert soll jetzt als Hyperlink dargestellt werden.
Mein Konvertierungsbefehl sieht aktuell wie folgend aus:
$servers_tmp | Export-CSV -Path C:\tmp.csv -NoTypeInformation -Encoding UTF8 $Header = @" <style> TABLE {border-width: 1px; border-style: solid; border-color: black; border-collapse: collapse;} TH {border-width: 1px; padding: 3px; border-style: solid; border-color: black; background-color: #6DBC59;} TD {border-width: 1px; padding: 3px; border-style: solid; border-color: black;} </style> "@ Import-Csv C:\tmp.csv | ConvertTo-Html -Property Servername,Funktion,vCenter,Link -Head $Header | Out-File C:\VMware_vCenter_Uebersicht.html
-
vor 27 Minuten schrieb testperson:
Mit PowerShell und etwas Eigeninitiative?
Habs schon lösen können und meinen Beitrag editiert
-
vor 44 Minuten schrieb testperson:
Hi,
sollte sich im Eventlog unter der Event-Id 21 von Microsoft-Windows-TerminalServices-LocalSessionManager/Operational finden lassen.
Gruß
Jan
Ja die Meldungen sind vorhanden. Danke.
Wie bekomme ich denn jetzt den Usernamen aus der Nachricht des Logeintrages exportiert ?
EDIT: So geht es
$event = Get-WinEvent -FilterHashtable @{ LogName = 'Microsoft-Windows-TerminalServices-LocalSessionManager/Operational' ID = 21 } -MaxEvents 1 $user = $event.Properties.Value[0] $time = Get-Date ($event.TimeCreated) $user ; $time
- 1
-
Hallo zusammen,
wie kann man auswerten. welche User (DOMAIN\Admin*) sich als letztes an einem Server per RDP angemeldet hat?
Die Server sind in der Regel bis auf drei Ausnahmen, keine Terminalserver
Vielen Dank schon einmal
EDIT:
Ich habe mal nach der WinEvent ID 4624 gefilter. Die Abfrage funktioniert auf einem normalen AD Member Server, auf einem Terminalserver leider nicht.
$event = Get-WinEvent -FilterHashtable @{LogName = 'Security' ID = 4624 } -MaxEvents 1000 | Where-Object {$_.Properties.Value[5]-like "Admin*"} | Select -First 1 "$($event.Properties.Value[5]) - $($event.TimeCreated)"
-
Halo zusammen,
kurzes Update.
ModeratedBy beim EInrichten hat geklappt, wird in der GUI aber gar nicht angezeigt.Inder GUI sieht man die Stellvertreter.
Die kann ich nach der Erstellung mittels
Set-Mailbox $mail -GrantSendOnBehalfTo $stellv
hinzufügen.
Jetzt muss ich es nur noch mit PS hinbekommen
"Stellvertretungen auswählen, die Buchungsanfragen annehmen oder ablehnen können" zu aktivieren
- 1
-
Gerade eben schrieb BOfH_666:
Stellvertreter? ... Du meinst die Moderatoren, oder? Gibt's ne Fehlermeldung? Wie gibst Du die Moderatoren denn an - Email, DN, GUID?
ja ich meine die Moderatoren. Ich geben sie per Name an.
Habe es aber auch mit der Mail-Adresse probiert, was auch nicht funktioniert hat.Die Ressource wird ohne Fehlermeldung erstellt, leider ohne Moderatoren.
-
Hallo zusammen,
ich bin gerade dabei die Erstellung von Ressourcen-Postfächern in unserer Exchange Hybrid Umgebung in einem Powershell Skript abzubilden.
Die Erstellung funktioniert auch ohne Fehler, nur leider werden die Stellvertreter nicht hinterlegt.
Kann jemand helfen?
Mein Befehl für die Erstellung:
New-RemoteMailbox -Room -SamAccountName Test-Res -Name Test-Res -LastName Test-Res -DisplayName Test-Res -UserPrincipalName Test-Res@****.de -OnPremisesOrganizationalUnit "OU=Resources,OU=***,OU=****,DC=****,DC=**" -Alias Test-Res -ModerationEnabled:$true -ModeratedBy "Mustermann, Max","Musterfrau, Beate"
-
vor 12 Stunden schrieb BOfH_666:
Wieso "wenn"? Ich sag doch, dass es das gibt. Kriegst Du's selbst gegoogled?
Da die curl.exe unter System32 liegt, rufe ich sie im PS Skript per cmd /C curl auf.
Das hilt mir auf jeden Fall schon einmal weiter -
vor 9 Minuten schrieb BOfH_666:
Warum? curl gibt es auch für Windows.
Wenn es das für Windows gibt, würde ich das natürlich auch versuchen.
-
Hallo zusamme,
wir verwenden bei uns Seafile für den Dateiaustauch mit externen.
Seafile wird vom Linux Team verwaltet, die mir leider nicht weiterhelfen können.
Der Linux Kollege hat den Uplade testweise mit folgenden Befehl gemacht:
curl -H "Authorization: Token 9388bbdfd67dd43632330b97a18278058c4a52dd" -F file=@D:\test1.txt -F parent_dir=/ -F replace=1 https://files.xxxx.de/seafhttp/upload-api/1a9d93ef-0171-4b56-b2ef-f42f392117bd
Das Ganze müsste ich jetzt in einen Powershell Befehl übersetzen.
Lieder habe ich dem Bereich keine Erfahrung und bräuchte Hilfe.
Vielen Dank schon einmal
HTML Style: Schriftfarbe in Abhängig zum Status
in Windows Forum — Scripting
Geschrieben
Hab es jetzt hinbekommen. Da war noch ein Fehler im style block. Da fehlte "border: "