Exchange Online PowerShell V2 Module supports Powershell 7 and Linux

Page content

Hallo zusammen,

An der Ignite 2020 wurde angekündigt, dass das EXO V2 PowerShell Module nun auch PowerShell 7 unterstützt.

Ich starte deshalb eine PowerShell als Admin ohne PS Profile

start PowerShell -nologo -noprofile

Um das neueste PreRelease Modul zu installieren benötigt man folgende Befehle

Get-Module ExchangeOnlineManagement -ListAvailable
Uninstall.-Module ExchangeOnlineManagement
Find-Module -Name ExchangeOnlineManagement -AllowPrerelease
Install-Module -Name ExchangeOnlineManagement -AllowPrerelease
Get-Module ExchangeOnlineManagement -ListAvailable

Nun kann das EXO V2 PowerShell Modul in der PowerShell 7 geladen und benutzt werden

Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline*
Get-EXOMailbox -identity <Identity>

Linux

Das ganze funktioniert auch auf Linux PowerShell 7.x auf Linux starten

pwsh
get-host

Das EXO V2 Modul installieren

Install-Module -Name ExchangeOnlineManagement -AllowPrerelease
Get-Module ExchangeOnlineManagement -ListAvailable

Beim Connect Befehl kommt es dann zu einer Fehlermeldung wegen einem fehlendem WSMan

Eine ganze Abhandlung dazu gibt es hier

Die Lösung das OMI Shared Object

Mit folgendem Befehl wird das PowerShell Home Directory angezeigt

dirname "$( readlink "$( which pwsh )" )"

Nun kann das Shared Object (SO) mit PowerShell ins Home Directory herunterladen

pwsh
$url = "https://github.com/jborean93/omi/releases/download/v1.2.0-pwsh/libmi-centos7.so"
$output = "/opt/microsoft/powershell/7/libmi.so"
Invoke-WebRequest -Uri $url -OutFile $output

Nun kann das PowerShell Modul geladen werden und verbunden werden

Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline -Device

Grüsse
Andres Bohren