Exchange Online nesnelerini görüntülemek için PowerShell'i kullanın | Bölüm 3#3


Mevcut makalelerdeki öncelikli amacım, Exchange Online tabanlı ortamda "filtrelenmiş arama" uygulamak için PowerShell'i bir araç olarak kullanma şeklimizi gözden geçirmektir.

Bazı senaryolarda, Exchange Online'ı belirli bir alıcı türü hakkında sorgulamamıza olanak tanıyan yerleşik PowerShell cmdlet'lerini kullanabiliriz.

Filtrelenmiş arama sorgusunu uygulamak için bu makalede incelediğimiz ana seçenek PowerShell ifadesidir

Office 365 ve Exchange Online nesnelerini görüntülemek için PowerShell'i kullanın | Makale serisi

Makale serisi aşağıdaki makaleleri içermektedir:

  1. Filtrelenmiş arama oluşturmak için PowerShell " Where ifadesini " kullanma | Office 365 ve Exchange Online nesneleri
  2. Office 365 nesnelerini görüntülemek için PowerShell'i kullanın
  3. Exchange Online nesnelerini görüntülemek için PowerShell'i kullanma (bu makale)

"Belirli Exchange Online nesneleri" terimi birçok senaryo türüne çevrilebilir.

Örneğin

  • Örnek 1 - posta kişileri, Exchange Grupları, Ortak Klasör, posta kutusu kullanıcıları vb. gibi belirli bir Çevrimiçi alıcı türünü arayan bir PowerShell "Filtrelenmiş arama" oluşturma.
  • Örnek 2 - E-posta adreslerinin belirli alan adını veya belirli Takma Adı içerdiği Exchange Online posta kutularını arayan bir PowerShell "Filtrelenmiş arama" oluşturma.
  • Örnek 3 - Kullanıcı posta kutusu, Paylaşılan posta kutusu, Oda Posta Kutusu vb. gibi belirli bir Exchange Online posta kutusu türünü arayan bir PowerShell "Filtrelenmiş arama" oluşturma.
  • Örnek 4 - belirli bir Exchange Online posta kutusunu arayan bir PowerShell "Filtrelenmiş arama" oluşturma: arşivi olan posta kutuları, Dava Bekletme özelliğine sahip posta kutuları, Yerinde Saklama özelliğine sahip posta kutuları, Denetim etkinleştirilmiş posta kutuları; Geçici olarak silinen Exchange Online posta kutusu, Etkin Olmayan Exchange Online posta kutuları vb.
  • Örnek 5 - Exchange Online posta kutusu kullanıcısının belirli bir departmandan kullanıcı, belirli bir unvana, belirli bir eyalete veya İl'e sahip bir kullanıcı vb. gibi bir "özelliğini" arayan bir PowerShell "Filtrelenmiş arama" oluşturma.
  • Örnek 6 - bir PowerShell "Filtrelenmiş arama" oluşturma, Exchange posta kutularının "Tarih bilgileri"ni arama. Örneğin:

    • Belirli bir zamanda (dakikalar, günler, aylar ve yıllar) oluşturulan Exchange Online posta kutuları.
    • Bir kullanıcının (posta kutusu sahibi) belirli bir zamanda (dakika, gün, ay ve yıl) eriştiği Exchange Online posta kutuları.

Get-Mailbox komutunu kullanarak Exchange posta kutuları hakkındaki bilgileri görüntüleyin

Tüm Exchange Online posta kutularını ve varsayılan sınırlı sayıdaki posta kutularını görüntüleyin

Exchange, kullanıcı posta kutusu, paylaşılan posta kutusu, oda posta kutusu vb. gibi birçok posta kutusu türünü içerir. PowerShell komutunu kullanarak - Get-Mailbox, tüm Exchange posta kutusu türlerinin görüntülenmesini istiyoruz.

Varsayılan olarak, PowerShell komutunun Get-Mailbox sonuçları yalnızca "ilk 1.000 Exchange posta kutusunu" görüntüler. ”

Get-Mailbox

Tüm farklı türdeki Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin | Görüntülenecek Exchange Online posta kutusu numarası için herhangi bir "sınır" yoktur.

Varsayılan “1.000 sonuç kısıtlamasını” “genişletmek” istediğimizde veya görüntülemek istediğimiz Exchange Online posta kutusu sayısını doğru bir şekilde belirtmek istediğimizde ResultSize parametresini kullanabiliriz.

ResultSize parametresi döndürülecek maksimum sonuç sayısını belirtir. Sorguyla eşleşen tüm istekleri döndürmek istiyorsanız bu parametrenin değeri için sınırsız kullanın.

Get-Mailbox -ResultSize Unlimited

Exchange Online posta kutusu nesnesini adreslediğimde hangi filtre parametresini kullanabileceğimi nasıl bilebilirim?

Aşağıdaki makalede, Exchange Online posta kutusunun belirli bir özelliğini arayarak Filtrelenmiş arama oluşturduğumuz farklı örnekleri inceliyoruz.

Belirli bir PowerShell nesnesinin “Exchange Online posta kutusu” gibi mevcut tüm özelliklerinin bir listesini almak istiyorsak PowerShell cmdlet’lerini kullanabiliriz - Get-Member

Örneğin, PowerShell komutunun Get-Mailbox'ın "sorgulayabileceğimiz" özelliklerinin (üyelerinin) bir listesini almak için PowerShell Get-Member komutunu kullanabiliriz.

Kullandığımız PowerShell sözdiziminin bir örneği:

PowerShell nesne özellikleri hakkında bilgi alma

PowerShell komut sözdizimi:

Get-Mailbox * | Get-Member

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox * | Get-Member
TypeName: Deserialized.Microsoft.Exchange.Data.Directory.Management.Mailbox

Name                                   MemberType   Definition 
----                                   ----------   ---------- 
GetType                                Method       type GetType() 
ToString                               Method       string ToString(), string ToString(string format, System.IFormatProvider formatProvider), string IFormattable.ToString(string format, System.IFormatPr...
PSComputerName                         NoteProperty string PSComputerName=outlook.office365.com 
PSShowComputerName                     NoteProperty bool PSShowComputerName=False 
RunspaceId                             NoteProperty guid RunspaceId=35665d8e-40d6-4fb7-9f09-cc13bd844e99 
AcceptMessagesOnlyFrom                 Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AcceptMessagesOnlyFromDLMembers        Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AcceptMessagesOnlyFromSendersOrMembers Property     Deserialized.Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[[Microsoft.Exchange.Data.Directory.ADObjectId, Microsoft.Exchange.Data.Director...
AccountDisabled                        Property     System.Boolean {get;set;} 
AddressBookPolicy                      Property     {get;set;}

Kullanabileceğimiz iki faydalı PowerShell parametresi | Sayım + Grup Nesnesi

Sonraki bölümde PowerShell komut çıkışından aldığımız “sonuçlara” uygulanabilecek iki kullanışlı PowerShell seçeneğini kısaca incelemek istiyorum.

Exchange Online posta kutularının sayısını sayın

PowerShell “count” seçeneği, PowerShell komutu tarafından görüntülenen sonuçları “saymamızı” sağlar.

Aşağıdaki örnekte, PowerShell komutunu - Get-Mailbox'ı kullandığımızda "oluşturulan" Exchange Online posta kutularının sayısını saymak için PowerShell parametresi "count"u kullanıyoruz.

Exchange Online posta kutularının sayısını sayın

PowerShell komut sözdizimi:

Get-Mailbox -ResultSize Unlimited).Count

PowerShell “Group-Object” seçeneği, adından da anlaşılacağı üzere PowerShell komutu tarafından görüntülenen sonuçların “Group” olmasını sağlar.

Aşağıdaki örnekte, mevcut tüm Ortak Klasör Exchange Online posta kutusu türüyle ilgili bilgilerin görüntülenmesini istiyoruz, ancak buna ek olarak şunu da istiyoruz: Posta kutusu türünün sonucunu gruplandırın.

Tüm Exchange Online posta kutuları hakkındaki bilgileri görüntüle | Posta kutusuna göre gruplandır

PowerShell komut sözdizimi:

Get-Mailbox -ResultSize Unlimited | Group-Object -Property RecipientTypeDetails

PowerShell konsolu çıktı örneği:

PS C:\script> Get-Mailbox -ResultSize Unlimited | Group-Object -Property RecipientTypeDetails |ft

Count  Name               Group
-----  ----               -----
45     UserMailbox        {Adele, Alice Good, Alicia Keys...}
1      DiscoveryMailbox   {Discovery Search Mailbox}
9      SharedMailbox      {DMARC and Spoof E-mail, E-mail attachments Mailbox, Help desk support tickets, Shared-MB01...}
4      RoomMailbox        {Room03, room04, Room-MB01, Room-MB02}

Belirli bir Exchange posta kutusu türü hakkındaki bilgileri görüntüleme

Exchange Online, Kullanıcı posta kutusu, Oda posta kutusu, Paylaşılan posta kutusu ve çok daha fazlası gibi çeşitli türde "posta kutuları" sağlar.

Aşağıdaki bölümde yalnızca belirli türde Exchange Online posta kutularını görüntüleyerek arama sonuçlarını filtreleyecek bir PowerShell komutunun kullanım örneklerini görebiliriz.

Arama sonucunu filtreleyin | Yalnızca "Kullanıcı posta kutusu" olarak kabul edilen Exchange Online posta kutuları hakkındaki bilgileri görüntüle

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “UserMailbox”} |FT Alias,RecipientTypeDetails

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.RecipientTypeDetails -eq “UserMailbox”} |FT DisplayName,RecipientTypeDetails

DisplayName        RecipientTypeDetails
-----------        --------------------
Adele              UserMailbox 
Alicia Keys        UserMailbox 
Angelina Jolie     UserMailbox 
Aretha Franklin    UserMailbox 
Beatles the        UserMailbox 
Beyonce            UserMailbox 
Billy              UserMailbox 
Bob marley         UserMailbox

Arama sonucunu filtreleyin | Yalnızca "Oda posta kutusu" olarak kabul edilen Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “RoomMailbox”} | FT Alias,RecipientTypeDetails

Arama sonucunu filtreleyin | Yalnızca "Paylaşılan posta kutusu" olarak kabul edilen Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “SharedMailbox”} | FT Alias,RecipientTypeDetails

Arama sonucunu filtreleyin | Yalnızca "Ekipman posta kutusu" olarak kabul edilen Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.RecipientTypeDetails -eq “EquipmentMailbox”} | FT Alias,RecipientTypeDetails

Not - Çeşitli Exchange Online posta kutusu türlerinin “tam listesini” görüntülemek istiyorsanız aşağıdaki makaleyi kullanabilirsiniz - RecipientTypeDetails numaralandırması.

Belirli bir Exchange alıcısı türü hakkındaki bilgileri görüntüleme

Exchange Online birçok türde "alıcı" içerir. ”

Aşağıdaki bölümde, belirli bir Exchange Online alıcısını arayarak "arama sonuçlarını filtrelememize" yardımcı olacak PowerShell komutlarını inceliyoruz.

Tüm Exchange Online alıcıları hakkındaki bilgileri görüntüle

PowerShell komut sözdizimi:

Get-Recipient | Sort RecipientType | Select DisplayName,RecipientType

PowerShell konsolu çıktı örneği:

PS C:\> Get-Recipient | Sort RecipientType | Select DisplayName,RecipientType 

DisplayName                  RecipientType 
-----------                  ------------- 
test-01                      DynamicDistributionGroup 
test-02                      DynamicDistributionGroup 
Test004                      MailUniversalDistributionGroup
Billy group                  MailUniversalDistributionGroup
Marketing                    MailUniversalDistributionGroup
ex2010                       MailUser 
test002                      PublicFolder 
test300                      PublicFolder 
Christina Aguilera           UserMailbox 
Chris Brown                  UserMailbox

Tüm Exchange Online kişileri hakkındaki bilgileri görüntüle

PowerShell komut sözdizimi:

Get-Contact | FT Name,RecipientType

Tüm Exchange Online posta kişileri hakkındaki bilgileri görüntüleme

PowerShell komut sözdizimi:

Get-MailContact | FT Name,RecipientType

PowerShell konsolu çıktı örneği:

PS C:\> Get-MailContact | FT Name,RecipientType

Name                  RecipientType
----                  -------------
Allie Bellew          MailContact 
Chris Norred          MailContact 
Cindy White           MailContact

Tüm Exchange Online posta kullanıcılarıyla ilgili bilgileri görüntüleyin

Exchange Hibrit ortamında, Exchange Şirket İçi posta kutusuna sahip Şirket İçi Active Directory kullanıcı hesabı Get-Mailuser olarak kabul edilecektir.

Tüm Exchange Online posta kullanıcılarıyla ilgili bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailuser | FT Name,RecipientType

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailuser | FT Name,RecipientType

Name            RecipientType
----            -------------
ed200           MailUser 
ex2007          MailUser 
ex2010          MailUser 
ex2013          MailUser

Tüm Exchange Online kullanıcıları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-User | Sort RecipientType | Select DisplayName,RecipientType

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Sort RecipientType | Select DisplayName,RecipientType 

DisplayName                RecipientType
-----------                -------------
ex2007                     MailUser 
ex2013                     MailUser 
Selena Gomez               User 
John Armstrong             User 
Nicki Minaj                UserMailbox 
Justin Bieber              UserMailbox

Exchange Online grupları hakkındaki bilgileri görüntüleme

Bu bölümde, Exchange Online Grubu ve Güvenlik Grubu, Dağıtım Grubu vb. gibi belirli grup türleri hakkındaki bilgileri görüntülemek için kullanabileceğimiz PowerShell komutlarını inceliyoruz.

Mevcut tüm Exchange Online grup türleri hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Group | Sort GroupType |Select Name,DisplayName,GroupType

PowerShell konsolu çıktı örneği:

PS C:\> Get-Group | Sort GroupType |Select Name,DisplayName,GroupType

Name                               DisplayName              GroupType 
----                               -----------              --------- 
inbal01                            inbal01                  Universal 
SharedMailboxes-group              SharedMailboxes-group    Universal 
office365_3fdb9f3bff               office365                Universal 
Support                            Support                  Universal, SecurityEnabled
info                               info                     Universal, SecurityEnabled
ATP-users                          ATP-users                Universal, SecurityEnabled
test03                             test03                   Universal, SecurityEnabled
Mobile Users                       Mobile Users             Universal, SecurityEnabled

- Dağıtım grupları olarak kabul edilen tüm Exchange Online grupları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-DynamicDistributionGroup |FT Name,DisplayName,RecipientType

PowerShell konsolu çıktı örneği:

PS C:\> Get-DynamicDistributionGroup |FT Name,DisplayName,RecipientType

Name             DisplayName   RecipientType 
----             -----------   ------------- 
sm-dy            sm-dy         DynamicDistributionGroup
test-01          test-01       DynamicDistributionGroup
test-07          test-07       DynamicDistributionGroup

Birleşik gruplar olarak kabul edilen tüm Exchange Online grupları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-UnifiedGroup | FT Name,DisplayName,RecipientType,AccessType

PowerShell konsolu çıktı örneği:

PS C:\> Get-UnifiedGroup | FT Name,DisplayName,RecipientType,AccessType

Name                               DisplayName            RecipientType                   AccessType
----                               -----------            -------------                   ----------
BOB-OFFICE365_5d7917ddd4           BOB-OFFICE365          MailUniversalDistributionGroup  Public 
Eyal-001-uni_7eca52b0ac            Eyal-001-uni           MailUniversalDistributionGroup  Private 
Eyal-002-uni-PUBLIC_3bf86941dd     Eyal-002-uni-PUBLIC    MailUniversalDistributionGroup  Public 
office365_3fdb9f3bff               office365              MailUniversalDistributionGroup  Public

"Güvenlik grubu" olarak kabul edilen tüm Exchange Online grupları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Group | Where {$_.GroupType -like "*security*"} | FT Name,DisplayName,GroupType

PowerShell konsolu çıktı örneği:

PS C:\> Get-Group | Where {$_.GroupType -like "*security*"} | FT Name,DisplayName, GroupType

Name                                   DisplayName GroupType 
----                                   ----------- --------- 
Organization Management                Universal, SecurityEnabled
Recipient Management                   Universal, SecurityEnabled
View-Only Organization Management      Universal, SecurityEnabled
UM Management                          Universal, SecurityEnabled

Exchange Online Ortak Klasörleri hakkındaki bilgileri görüntüleme

Bu bölümde Exchange Online Ortak Klasörlerinde bilgi görüntülemek için kullanabileceğimiz PowerShell komutlarını inceliyoruz.

Tüm Exchange Online Ortak Klasörleri hakkındaki bilgileri görüntüleyin

PowerShell komutu - Get-MailPublicFolder, yalnızca “üst düzey” Ortak Klasör hiyerarşisi hakkındaki bilgileri görüntüler.

PowerShell komut sözdizimi

Get-MailPublicFolder |FT Alias,DisplayName,RecipientType,EmailAddresses

PowerShell konsolu çıktı örneği:

PS C:\> Get-MailPublicFolder |FT Alias,DisplayName,RecipientType

Alias       DisplayName      RecipientType
-----       -----------      -------------
root1       root             PublicFolder 
test002     test002          PublicFolder 
Jobs        Jobs             PublicFolder 
test300     test300          PublicFolder 
test400     test400          PublicFolder

Exchange Online Ortak Klasörleri + “alt Ortak Klasörler” hakkındaki bilgileri görüntüleme

Üst düzey Ortak Klasör + “alt Ortak Klasörler”i içeren “tam Ortak Klasör hiyerarşisini” görüntülemek istiyorsanız aşağıdaki PowerShell komutunu kullanabilirsiniz.

PowerShell komut sözdizimi:

Get-PublicFolder “\” -Recurse

PowerShell konsolu çıktı örneği:

PS C:\> Get-PublicFolder “\” -Recurse

Name                  Parent Path 
----                  ----------- 
IPM_SUBTREE 
Jobs                  \ 
Test200               \ 
test300               \ 
test400               \ 
layer-01-Test-400     \test400 
layer-02-test400      \test400\layer-01-Test-400
test500               \

Belirli bir Etki Alanı adı son ekine veya Takma Ad'a sahip E-posta adresine sahip Exchange Online posta kutularını görüntüleyin

Belirli bir etki alanı adını içeren bir E-posta adresine sahip Exchange Online posta kutularını bulun ve görüntüleyin

Belirli bir alan adı sonekine sahip bir e-postaya sahip tüm Exchange Online posta kutularını görüntüleyin

Aşağıdaki örnekte, o365info.com etki alanı adını içeren e-posta adresine sahip Exchange Online posta kutularını arıyoruz.

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.EmailAddresses -like "*@o365info.com"} | FL DisplayName,EmailAddresses

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.EmailAddresses -like "*@o365info.com"} | FL DisplayName,EmailAddresses

DisplayName    : Adele
EmailAddresses : {SPO:SPO_d5a46ab4-0922-4d9c-b2f3-3ddbff048a32@SPO_e95bcc9e-2927-483d-ad36-7311a7152bdd, smtp:Adele@o365info.com, SMTP:Adele@o365info2.onmicrosoft.com, SIP:Adele@o365info.com}

DisplayName    : Alicia Keys
EmailAddresses : {SIP:Alicia@o365info.com, smtp:Alicia@o365info2.onmicrosoft.com, SMTP:Alicia@o365info.com}

DisplayName    : Angelina Jolie
EmailAddresses : {SPO:SPO_5b27dc17-68b0-442e-804b-aee5b4df9847@SPO_e95bcc9e-2927-483d-ad36-7311a7152bdd, SIP:Angelina@o365info.com, SMTP:Angelina@o365info.com, smtp:Angelina@o365info2.onmicrosoft.com}

DisplayName    : Aretha Franklin
EmailAddresses : {SIP:Aretha@o365info.com, SMTP:Aretha@o365info.com, smtp:Aretha@o365info2.onmicrosoft.com}

Belirli bir Takma Ad içeren bir E-posta adresine sahip Exchange Online posta kutularını bulun ve görüntüleyin

Exchange Online posta kutusunun, birincil E-posta adresi olarak tanımlanan bir E-posta adresine sahip olması gerekir; satın alma, Proxy E-posta adresi olarak tanımlanan ek bir E-posta adresine sahip olabilir.

Belirli bir Takma Ad (bir E-posta adresinin “sol kısmı”) aradığımızda, bu takma adı yalnızca Takma Ad birincil E-posta adresinde görünüyorsa aramak isteyip istemediğimizi veya bir Takma Ad aramak isteyip istemediğimizi tanımlayabiliriz. tüm Exchange Online Posta Kutusu E-posta adreslerinde görünür.

Birincil E-posta adreslerinin belirli bir takma ad içerdiği tüm Exchange Online posta kutularını görüntüleyin

Bu durumda, Bob takma adını içeren bir Birincil E-posta adresine sahip Exchange Online posta kutularını aramak için PowerShell parametresi "E-postaadresleri"ni kullanırız.

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.primarysmtpaddress -like "bob*"} | FL DisplayName,EmailAddresses

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.primarysmtpaddress -like "bob*"} | FL DisplayName,EmailAddresses

DisplayName    : Bob marley
EmailAddresses : {smtp:mrkt1@o365info.com, smtp:Albert@o365info.com, smtp:bobm@o365info.com, SIP:bob@o365info.com...}

E-posta adreslerinin belirli bir Takma Ad içerdiği tüm Exchange Online posta kutularını görüntüleyin

Bu durumda, Bob Takma adını içeren E-posta adresine (herhangi bir proxy E-posta adresi) sahip Exchange Online posta kutularını aramak için PowerShell parametresi "Epostaadresleri"ni kullanırız.

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.EmailAddresses -like "*bob*"} | FL DisplayName, EmailAddresses

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.EmailAddresses -like "*bob*"} | FL DisplayName, EmailAddresses

DisplayName    : Bob marley
EmailAddresses : {smtp:mrkt1@o365info.com, smtp:Albert@o365info.com, smtp:bobm@o365info.com, SIP:bob@o365info.com...}

Exchange Online posta kutularını görüntüle - Geçici Silinen posta kutuları ve Etkin Olmayan posta kutuları

Bu bölümde, arama sonucunu yalnızca Geçici Olarak Silinmiş Exchange Online posta kutuları veya Etkin Olmayan Exchange Online posta kutuları olarak kabul edilen Exchange Online posta kutuları için kısıtlayacak PowerShell komutlarının nasıl kullanılacağını inceliyoruz.

“Gecikmeli olarak silinen posta kutuları” olarak değerlendirilen tüm Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailbox -SoftDeletedMailbox | FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox -SoftDeletedMailbox | FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

Name                        Alias      IsSoftDeletedByRemove IsInactiveMailbox
----                        -----      --------------------- -----------------
room001                     room001                     True             False
Katy Perry                  Katy                        True             False
michael jackson             michael                     True             False
James Brown_eb17e65f06      James                       True             False
Test100                     Test100                     True              True
test501                     test501                     True             False
test500                     test500                     True             False

Kullanıcı hesabının (sahibinin) devre dışı bırakıldığı Exchange Online'ı görüntüleyin

PowerShell komut sözdizimi:

Get-mailbox | Where {$_.AccountDisabled -eq $True} | FT Alias, UserPrincipalName,AccountDisabled

PowerShell konsolu çıktı örneği:

PS C:\> Get-mailbox | Where {$_.AccountDisabled -eq $True} | FT Alias, UserPrincipalName,AccountDisabled 

Alias                                                           UserPrincipalName         AccountDisabled
-----                                                           -----------------         ---------------
Angelina                                                        Angelina@o365info.com     True
DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}    DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}@o365info.com True
DMARC-Spoof DMARC-Spoof@o365info.com                                                      True
hd                                                              hd@o365info.com True
Shared-MB01                                                     Shared-MB01@o365info.com  True
Shared-MB02                                                     Shared-MB02@o365info.com  True
Shared-MB03                                                     Shared-MB03@o365info.com  True

“Etkin olmayan posta kutuları” olarak değerlendirilen tüm Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

PowerShell komut sözdizimi:

Get-Mailbox -InactiveMailboxOnly |FT Name,Alias,IsSoftDeletedByRemove,IsInactiveMailbox

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox -InactiveMailboxOnly |FT Name,Alias ,IsSoftDeletedByRemove,IsInactiveMailbox

Name         Alias     IsSoftDeletedByRemove IsInactiveMailbox
----         -----     --------------------- -----------------
Test100      Test100                    True              True

Belirli bir Saat dilimi veya belirli bir dil koduyla yapılandırılmış Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin”

Exchange Online posta kutularına ilişkin bilgileri görüntüleme | Belirli saat dilimi

Aşağıdaki örnekte, aşağıdaki koşulu karşılayan Exchange Online posta kutularının arama sonucunun filtrelenmesini istiyoruz.

Belirli bir saat dilimine sahip Exchange posta kutularını görüntüleme

Aşağıdaki örnekte Exchange Online posta kutuları hakkında saat diliminin=“Pasifik Standart Saati olduğu bilgisini almak istiyoruz. ”

PowerShell komut sözdizimi:

Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.TimeZone -like "*Pacific Standard Time*"}

PowerShell konsolu çıktı örneği

PS C:\> Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.TimeZone -like "*Pacific Standard Time*"}

Identity       Language      DateFormat   TimeFormat     TimeZone 
--------       --------      ----------   ----------     -------- 
Demi           en-US         M/d/yyyy     h:mm tt        Pacific Standard Time 
Grace jones    en-US         M/d/yyyy     h:mm tt        Pacific Standard Time 
Rihanna        en-US         M/d/yyyy     h:mm tt        Pacific Standard Time

Not: Bir OWA posta istemcisi bu saat dilimini seçtiğinde, saat dilimi - (GMT-08:00) Pasifik Saati (ABD ve Kanada) olarak görünür.

Kullanılabilir Saat Dilimleri değerlerinin listesini alın

İpucu - aşağıdaki PowerShell komutunu kullanarak Saat Dilimlerinin değerleri hakkındaki bilgileri “getirebilirsiniz”:

Get-ChildItem "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Time zones" | FL pschildname

PowerShell konsolu çıktı örneği:

PS C:\> Get-ChildItem "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Time zones" | FL pschildname

PSChildName : Afghanistan Standard Time

PSChildName : Alaskan Standard Time

PSChildName : Aleutian Standard Time

PSChildName : Altai Standard Time

PSChildName : Arab Standard Time

PSChildName : West Pacific Standard Time

PSChildName : Yakutsk Standard Time

“Saat Dilimlerinin” kullanılabilir değerleri konusu hakkında daha fazla bilgiyi aşağıdaki makalede okuyabilirsiniz: Microsoft Saat Dilimi Dizin Değerleri

Exchange Online posta kutularına ilişkin bilgileri görüntüleme | Belirli dil

Aşağıdaki örnekte, aşağıdaki koşulu karşılayan Exchange Online posta kutularının arama sonucunun filtrelenmesini istiyoruz.

Belirli bir dile sahip Exchange Online posta kutuları hakkındaki bilgileri görüntüleme

Aşağıdaki örnekte, dil ayarları=“en-GB ” olan Exchange posta kutularını görüntülemek istiyoruz.

PowerShell komut sözdizimi:

Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.Language -like "*en-GB*"}

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Get-MailboxRegionalConfiguration | Where {$_.Language -like "*en-GB*"}

Identity             Language       DateFormat TimeFormat TimeZone 
--------             --------       ---------- ---------- -------- 
Angelina             en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
Ayelet_9acbcfb3dc    en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
George Michael       en-GB          dd/MM/yyyy HH:mm      Israel Standard Time 
onprem120            en-GB          dd/MM/yyyy HH:mm      Samoa Standard Time

Dava bekletme veya Yerinde bekletme ile Exchange Online posta kutusunu görüntüleme

Bu bölümde, Dava Tutma veya Yerinde Tutma ile Exchange Online posta kutuları olarak yapılandırılmış belirli bir Exchange Online posta kutusunu aramak için kullanabileceğimiz PowerShell komutlarını inceliyoruz.

Dava Bekletme özelliğiyle Exchange Online posta kutuları hakkındaki bilgileri görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.LitigationHoldEnabled -match "True"} | FT Alias , lit*

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.LitigationHoldEnabled -match "True"} | FT Alias , lit*

Alias     LitigationHoldEnabled LitigationHoldDate       LitigationHoldOwner   LitigationHoldDuration
-----     --------------------- ------------------       -------------------   ----------------------
Adele     True                  11/23/2016 2:52:34 PM    George@o365info.com   6000.00:00:00 
bob       True                  12/11/2016 1:20:09 PM    George@o365info.com   6000.00:00:00 
Depeche   True                  2/3/2016 2:29:08 PM      Bradp@o365pilot.com   970.00:00:00

Yerinde Saklama özelliğiyle Exchange Online posta kutuları hakkındaki bilgileri görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.InplaceHolds -ne $null} | FT Name,Alias,InPlaceHolds

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.InplaceHolds -ne $null} | FT Name,Alias,InPlaceHolds

Name         Alias     InPlaceHolds 
----         -----     ------------ 
Angelina     Angelina  {0e9a2a3160464d49a656127020a7c11a} 
Eyal200      Eyal200   {UniHd0bcaafd-c284-4bae-b46f-ef049559d45a}

Denetimin etkin olduğu Exchange Online posta kutularını görüntüle

Denetimin etkin olduğu Exchange Online posta kutularını görüntüle

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.AuditEnabled -eq “$True”} | FL Name,Alias,Audit*

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.AuditEnabled -eq “$True”} | Fl Name,Alias,Audit*

Name             : Adele
Alias            : Adele
AuditEnabled     : True
AuditLogAgeLimit : 90.00:00:00
AuditAdmin       : {Update, Copy, Move, MoveToDeletedItems...}
AuditDelegate    : {Update, Move, MoveToDeletedItems, SoftDelete...}
AuditOwner       : {Update, Move, MoveToDeletedItems, SoftDelete...}

Name             : bob
Alias            : bob
AuditEnabled     : True
AuditLogAgeLimit : 90.00:00:00
AuditAdmin       : {Update, Copy, Move, MoveToDeletedItems...}
AuditDelegate    : {Update, Move, MoveToDeletedItems, SoftDelete...}
AuditOwner       : {Update, Move, MoveToDeletedItems, SoftDelete...}

E-postayı otomatik olarak başka bir E-posta adresine iletecek şekilde yapılandırılmış Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin

“İletme seçeneği”, aşağıdaki seçeneklerden biriyle her E-postayı başka bir alıcıya otomatik olarak iletecek şekilde yapılandırılabilir:

Seçenek 1 - E-posta mesajını dahili bir alıcıya iletme

E-posta mesajının otomatik olarak başka bir "Office 365 alıcısına" (aynı Office 365 kiracısından) iletileceği bir yapılandırma.

PowerShell parametresi - ForwardingAddress tarafından tanımlanan bu seçenek

Seçenek 2 - E-posta mesajını harici bir alıcıya iletme

E-posta mesajının, harici e-posta adresine sahip alıcı anlamına gelen “Harici alıcı” olarak kabul edilen başka bir alıcıya otomatik olarak iletileceği bir yapılandırma.

Bu seçenek PowerShell parametresi - ForwardingSmtpAddress tarafından tanımlanır

Dahili bir e-posta adresi için E-posta iletme etkinleştirilmiş Exchange Online posta kutularını görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.ForwardingAddress -ne $null}| Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.ForwardingAddress -ne $null}| Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

DisplayName              Alias         ForwardingAddress           ForwardingSmtpAddress 
-----------              -----         -----------------           --------------------- 
Angelina Jolie           Angelina      Eyal                        smtp:bradp@o365info.com
DMARC and Spoof E-mail   DMARC-Spoof   DMARC Report- dmarcian.com

Harici bir e-posta adresi için E-posta iletme etkinleştirilmiş Exchange Online posta kutularını görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.ForwardingSmtpAddress -ne $null} | Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.ForwardingSmtpAddress -ne $null} | Select DisplayName,Alias,ForwardingAddress ,ForwardingSmtpAddress

DisplayName       Alias      ForwardingAddress ForwardingSmtpAddress 
-----------       -----      ----------------- --------------------- 
Angelina Jolie    Angelina   Eyal              smtp:bradp@o365info.com 
Bob marley        bob                          smtp:edron789@gmail.com

GAL'de görünmeyen Exchange Online posta kutularını görüntüleme

Varsayılan olarak her Exchange Online posta kutusu GAL'de (Global Adres Listesi) görünür.

Bazı durumlarda, belirli Exchange Online posta kutuları GAL'de "görünmeyecek" (Adres Listelerinden Gizlenen Posta Kutuları) şekilde yapılandırılmıştır.

Bu tür Exchange Online posta kutularının listesini alabilmek için aşağıdaki PowerShell komutunu kullanabiliriz.

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.HiddenFromAddressListsEnabled -eq $True} | FT Name,Alias,HiddenFromAddressListsEnabled

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.HiddenFromAddressListsEnabled -eq $True} | FT Name,Alias,HiddenFromAddressListsEnabled

Name                                                         Alias                                                        HiddenFromAddressListsEnabled
----                                                         ----- -----------------------------
DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852} DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852} True
Elvis                                                        Elvis                                                        True

Arşiv posta kutusuyla Exchange Online posta kutularını görüntüleme

Arşivi olan Exchange Online posta kutularını görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.ArchiveStatus -eq 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.ArchiveStatus -eq 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Alias   RecipientTypeDetails ArchiveStatus
-----   -------------------- -------------
Alicia  UserMailbox          Active 
bradp   UserMailbox          Active 
mord    UserMailbox          Active

Arşivi olmayan Exchange Online posta kutularının listesini görüntüleme

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.ArchiveStatus -ne 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

VEYA

PowerShell komut sözdizimi:

Get-Mailbox | Where {$_.ArchiveStatus -eq 'none'} | FT Alias,RecipientTypeDetails,ArchiveStatus

PowerShell konsolu çıktı örneği:

PS C:\> Get-Mailbox | Where {$_.ArchiveStatus -ne 'Active'} | FT Alias,RecipientTypeDetails,ArchiveStatus

Alias      RecipientTypeDetails ArchiveStatus
-----      -------------------- -------------
Adele      UserMailbox          None 
admin      UserMailbox          None 
Angelina   UserMailbox          None 
Aretha     UserMailbox          None 
Beatles    UserMailbox          None

Exchange Online posta kutularını görüntüleme | Sonuçları belirli bir özelliğe veya kullanıcının (posta kutusu sahibi) özelliklerinin birleşimine göre filtreleyin

Aşağıdaki bölümde, Departman, Unvan, Eyalet veya İl vb. gibi belirli bir "kullanıcı özelliği" kullanılarak arama sonucunun nasıl filtreleneceğini inceliyoruz.

Bahsettiğimiz PowerShell “nesnesi” - Exchange Online posta kutusu değil, bunun yerine “Exchange kullanıcı nesnesi” (Get-User) olarak tanımlanan bir nesnedir.

Exchange Online web yönetimi arayüzünü kullanırken, kullanıcı özellikleri Exchange Online posta kutusu özelliklerinin bir parçası olarak görüntülenir.

Kullanıcı özellikleri "Exchange Online posta kutusunun bir parçası" olarak görüntülenmesine rağmen, arama sonucunu filtreleyebilmek için "Exchange Online posta kutusu sahibi" yani Exchange Online posta kutusunun sahibi olarak kabul edilen kullanıcıyı ele almamız gerekir ve Exchange Online posta kutusunun kendisi değil.

"Exchange Online kullanıcısının posta kutularını" belirli bir "Departman" değeriyle görüntüleyin

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Posta kutusu kullanıcı departmanı - “Satış”

PowerShell komut sözdizimi:

Get-User | Where {$_.Department -eq “Sales”} |FT DisplayName,Department

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {$_.Department -eq “Sales”} |FT DisplayName,Department

DisplayName           Department
-----------           ----------
Brad Pitt             Sales 
Christina Aguilera    Sales

"Exchange Online kullanıcısının posta kutularını" belirli bir "Departman" değeriyle görüntüleyin | Departman X veya Departman Y

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Posta kutusu kullanıcı departmanı - “Satış” veya posta kutusu kullanıcı departmanı - “Pazarlama”'dir

PowerShell komut sözdizimi:

Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”)} | Select DisplayName,Department | Sort Department

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”)} | Select DisplayName,Department | Sort Department

DisplayName           Department
-----------           ----------
Beatles the           Marketing 
Beyonce               Marketing 
Craig David           Marketing 
Brad Pitt             Sales 
Christina Aguilera    Sales

"Exchange Online kullanıcısının posta kutularını" belirli bir "Departman" değeri ve belirli bir "Başlık" değeriyle görüntüleyin

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Posta kutusu kullanıcı unvanı - “Yönetici”
  • Kullanıcı posta kutusu departmanı - “Satış ”

PowerShell komut sözdizimi:

Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

DisplayName    Department  Title 
-----------    ----------  ----- 
Brad Pitt      Sales       Manager

"Exchange Online kullanıcısının posta kutularını" belirli bir "Departman" değeriyle görüntüleyin | Departman X veya Departman Y + belirli Başlık değeri

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Posta kutusu kullanıcı unvanı - “Yönetici. ”
  • Kullanıcı posta kutusu departmanı - “Satış” veya kullanıcı posta kutusu departmanı - “Pazarlama”dır. ”

PowerShell komut sözdizimi:

Get-User | Where {($_.Department -eq “Sales”) -or ($_.Department -eq “Marketing”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {($_.Department -eq “Sales”) -and ($_.Title -eq “Manager”)} | FT DisplayName,Department,Title

DisplayName    Department  Title 
-----------    ----------  ----- 
Brad Pitt      Sales       Manager

"Exchange Online kullanıcısının posta kutularını" belirli bir "Departman" değeriyle görüntüleyin | Departman adı belirli bir dizeyle başlar

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Posta kutusu kullanıcı departmanı - “Satış” kelimesiyle başlar

Bu örnekte şirketin "satış" kelimesiyle başlayan birkaç departmanı var, örneğin: Satış, Satış ABD vb.

PowerShell komut sözdizimi:

Get-User | Where {$_.Department -like “Sales*”} | FT DisplayName,Department

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {$_.Department -like “Sales*”} | FT DisplayName,Department

DisplayName           Department
-----------           ----------
Aretha Franklin       Sales UK 
Brad Pitt             Sales 
Christina Aguilera    Sales 
Elvis Preslay         Sales USA

Ülke veya bölgelerinin belirli bir Ülke veya Bölge değerine "eşit olmadığını" belirten "Exchange Online kullanıcısının posta kutularını" görüntüleyin

Bu gereklilik kulağa biraz kafa karıştırıcı geliyor.

Böyle bir gereksinime örnek olarak dünyanın her yerinde birçok sitesi bulunan bir şirket verilebilir.
Şirketin, şirket şubesinin yanı sıra dünya çapındaki şirket şubelerinde bulunan Exchange Online kullanıcılarının bir listesini alması gerekir. ABD (ABD'de değil).

Aşağıdaki parametreleri yanıtlayan "Exchange Online kullanıcısının posta kutularının" listesini görüntüleyin:

  • Kullanıcı posta kutusu Eyalet veya İl ABD değildir

PowerShell komut sözdizimi:

Get-User | Where {$_.CountryOrRegion -ne “USA”} | FT DisplayName,CountryOrRegion

PowerShell konsolu çıktı örneği:

PS C:\> Get-User | Where {$_.CountryOrRegion -ne “USA”} | FT DisplayName,CountryOrRegion

DisplayName        CountryOrRegion
-----------        ---------------
Aretha Franklin    Israel 
Beatles the        United Kingdom 
Billy              United Kingdom 
Bob marley         Israel 
Brad Pitt          Australia

Exchange Online posta kutularını görüntüleme | Sonuçları “Tarih bilgilerine” göre filtreleyin

Sonraki bölümde belirli bir nesnenin “Tarih\Saat” değerine ilişkin PowerShell sorgusunun nasıl oluşturulacağını inceliyoruz.

Bizim durumumuzda, belirli bir "Tarih\Saat" değerine sahip belirli bir özelliğe sahip Exchange Online posta kutuları hakkında bilgi almakla ilgileniyoruz. ”

Bu tanımın biraz belirsiz göründüğünü biliyorum, bu yüzden yukarıdaki gibi daha somut örnekler vereceğiz.

Exchange Online posta kutusu nesnesi, “Tarih\Saat” değerini içeren iki “özellik” içerir. ”

  1. İlk değer, Exchange Online posta kutusunun oluşturulduğu “Tarih\Saat”tir. Bu değer “WhenCreated.txt” olarak tanımlanır. ”
  2. İkinci değer, Exchange posta kutusu kullanıcısının (posta kutusu sahibi) Exchange Online posta kutusuna eriştiği (oturum açtığı) “Tarih\Saat”tir. Bu değer “LastLogonTime.txt” olarak tanımlandı. ”

Sonraki bölümde “Tarih\Saat” değeriyle ilgili sorguları uygulamak için PowerShell'i nasıl kullandığımızın bir açıklamasıyla başlamak ve ardından bilgi almak için kullandığımız PowerShell komut sözdiziminin daha spesifik örneklerini vermek istiyorum. Dakikalar, Saatler, aylar, yıllar vb. gibi farklı “zaman dilimleri” hakkında.

Belirli PowerShell komut söz dizimi hakkındaki bilgilere başlamadan önce, PowerShell'i belirli bir zaman aralığında meydana gelen bir sorgu "olay" için kullanma kavramı üzerinde birkaç dakika duralım.

PowerShell "zamana dayalı sorgu" oluşturmak için aşağıdaki parametreleri tanımlamamız gerekecek:

    1. Nesne
      Onun hakkında bilgi edinmek için istediğimiz belirli nesne. Nesne “Kullanıcı hesabı”, “Exchange posta kutusu” vb. olabilir.
    2. Nesnenin belirli özelliği
      Örneğin, bir Office 365 ortamında, Exchange Online posta kutusunun oluşturulduğu belirli bir zaman hakkında bilgi almayı isteyebiliriz.
      Office 365'te "adres ettiğimiz" özellik şu: WhenCreated
    3. Zaman birimi
      PowerShell bize kullanabileceğimiz çeşitli “Zaman birimleri” sunar - Milisaniye, Saniye, Dakika, Saat, Gün, yıl vb.
    4. PowerShell operatörü
      Bu, kullandığımız belirli PowerShell operatörüdür.

    PowerShell operatörünü “Zaman aralıkları” ile kullanma

    Örneğimizde aşağıdaki iki PowerShell operatörünü kullanarak çeşitli senaryolar göstereceğim:

    1. ge (Büyük veya eşittir).
      “ge” operatörünü kullanmak, zaman içinde belirli bir noktadan itibaren “gerçekleşen” bir “olay” hakkında bilgi almamıza yardımcı olacaktır.
    2. le (Küçük veya eşittir).
      “Le” operatörünü kullanmak, zamanda belirli bir noktadan önce meydana gelen bir “olay” hakkında bilgi almamıza yardımcı olacaktır.

    Bu kavramı somutlaştırabilmek için aşağıdaki örneği kullanalım:

    "Başlangıç noktası", geçerli tarihi (gün, ay, yıl vb.) "getiren" PowerShell komutu - Get-Date'dir.

    Özel örneğimizde, geçerli tarihten iki ay öncesine ait bir "zaman aralığı" tanımlamak istiyoruz.

    Bu zaman aralığını tanımlamak için aşağıdaki PowerShell komutunu kullanıyoruz:

    (Get-Date).AddMonths(-2)

    Güncel tarihi alıyoruz ve mevcut tarihten “2 ay” çıkarıyoruz. ”

    Örneğimizde "şu anki saat" 8. ay (Ağustos) ve gün "15'tir. ”

    PowerShell komutunun sonucu - (Get-Date).AddMonths(-2), sonraki ayları (6 ay ve 7 ayını) kapsayan bir zaman aralığı olarak gerçekleştirilecektir.şu aya kadar (8 ay).

    Daha doğru olmak istiyorsak, komut 06/01'de başlayıp
    08/15'de biten bir zaman aralığı tanımlayacaktır.

    1. Ge (Büyük veya eşittir) operatörü + zaman aralığını kullanma.

    PowerShell ““ge” operatörünü -
    (Get-Date).AddMonths(-2) komutunun birleşimiyle kullandığımızda, PowerShell'den bize olay sırasında meydana gelen bir olay hakkında bilgi göstermesini isteriz. şu zaman aralığı: 06/01 ile 08/15 arası.

    “Zaman aralığı noktaları” şu şekilde tanımlanır:

    Zaman aralığının "başlangıç noktası", geçerli tarih alınarak ve geçerli tarihten iki ay çıkarılarak hesaplanır.
    Örneğimizde başlangıç noktası, ayın ilk günü olan "6 'dur. . ”

    Zaman aralığının "Sonu", "geçerli tarih"tir. ”
    Örneğimizde geçerli tarih, “8 ayının 15 günüdür. ”

    Not: “Geçerli tarihin” değeri, gösterim için kullandığımız keyfi bir değerdir.

    1. Dosya (Küçük veya eşit) operatörünü + zaman aralığını kullanma.

    PowerShell “le” operatörünü -
    (Get-Date).AddMonths(-2) komutunun birleşimiyle kullandığımızda, PowerShell’den bize gerçekleşen bir “olay” hakkında bilgi göstermesini isteriz <şu zaman aralığından önce: 06/01.

    Aşağıdaki örnekte belirli bir zaman aralığında oluşturulmuş Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    1. PowerShell “nesnesi” bir “Exchange Online posta kutusudur. ”
      (PowerShell cmdlet'leri tarafından temsil edilir - Get-Mailbox).
    2. “Sorguladığımız” spesifik kullanıcı hesabı özelliği - “WhenCreated. ”
    3. Kullandığımız “zaman birimi” - “Aydır. ”

    Spesifik sorgumuzu yanıtlayan Exchange Online posta kutularının bir listesini alabilmek için, koşulu tanımlamak için “Nerede” adlı PowerShell cmdlet'lerini (ifadesini) kullanıyor ve gerekli bilgileri filtreliyoruz.

    Senaryo 1 - Son iki ayda oluşturulan Exchange posta kutularına ilişkin bilgiler.

    Bu senaryoda son iki ayda oluşturulan Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    İki ay önce başlayan ve geçerli tarihe kadar süren "zaman aralığını" tanımlamak için PowerShell operatörünü ge (Büyüktür veya eşittir) kullanırız.

    Senaryo 2 - Son iki aydan önce oluşturulan Exchange posta kutularına ilişkin bilgiler.

    Bu senaryoda, son iki aydan önce oluşturulan Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    İki ay önce, geçerli tarihten itibaren başlayan ve "sonsuza kadar" devam eden "zaman aralığını" tanımlamak için PowerShell operatörünü - le (Küçük veya eşit) kullanırız.

    1#2 - Exchange Online posta kutusunun oluşturulduğu “Tarih\Saat” hakkında bilgi alın

    Aşağıdaki bölümde, aşağıdaki bilgileri filtrelememize yardımcı olacak PowerShell komut sözdiziminin çeşitli örneklerini sunuyorum - Exchange Online posta kutusunun belirli bir zaman aralığında oluşturulduğu “Tarih\Saat” hakkında bilgi edinin.

    • İlk bölümde geçmişte belirli bir tarihten günümüze kadar oluşturulmuş Office 365 kullanıcı hesapları hakkında bilgi arayacağız.
    • İkinci bölümde belirli bir Tarih aralığından önce oluşturulmuş Office 365 kullanıcı hesapları hakkında bilgi arayacağız.

    Senaryo 1#2 - Son X zaman aralığında oluşturulan Exchange Online posta kutusu hakkında bilgi alma.

    PowerShell operatörü -ge (Büyük veya eşit) temel alınarak tanımladığımız PowerShell “koşulu”

    Örneklerimizde, belirli bir "zaman noktasından" ve sonrasında (Büyük veya Eşit) oluşturulan Exchange posta kutuları hakkında bilgi almak istiyoruz.

    Belirli bir tarihten sonra oluşturulan Exchange Online posta kutularını görüntüleme

    Aşağıdaki örnekte, şu tarihten sonra oluşturulan Exchange Online posta kutularını arıyoruz: 11/10/2016

    PowerShell komut sözdizimi:

    Get-Mailbox | Where-Object {$_.WhenCreated -gt “11/10/2016”} | FT DisplayName,WhenCreated

    PowerShell konsolu çıktı örneği:

    PS C:\> Get-Mailbox | Where-Object {$_.WhenCreated -gt “11/10/2016”} | FT DisplayName,WhenCreated
    
    DisplayName      WhenCreated 
    -----------      ----------- 
    Aretha Franklin  12/18/2016 9:01:58 AM 
    Bob marley       11/17/2016 7:41:32 PM 
    Demi Lovato      12/13/2016 1:23:08 PM 
    Rihanna          12/13/2016 1:22:21 PM 
    Shared-MB06      11/28/2016 3:31:46 PM 
    Shared-MB07      11/28/2016 3:32:30 PM

    Son X dakika içinde oluşturulan Exchange Online posta kutularını görüntüle

    Aşağıdaki örnekte son 160 dakika içinde oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).Addminutes(-160))} | FT DisplayName,WhenCreated

    Son X saat içinde oluşturulan Exchange Online posta kutularını görüntüle

    Aşağıdaki örnekte son 40 saat içinde oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddHours(-40))} | FT DisplayName,WhenCreated

    Son X Gün içinde oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 20 Gün içinde oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).Adddays(-2))} | FT DisplayName,WhenCreated

    Son X Ay boyunca oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 2 ayda oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddMonths(-2))} | FT DisplayName,WhenCreated

    Belirli bir ayda oluşturulan Exchange Online posta kutularını görüntüleyin.

    Aşağıdaki örnekte, Ağustos (8) ayında oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {($_.WhenCreated).Month -eq 8} | FT DisplayName,WhenCreated

    Son X yılda oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 2 yılda oluşturulan Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -ge ((Get-Date).AddYears(-2))} | FT DisplayName,WhenCreated

    Belirli bir yılda oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte 2016 yılında oluşturulan Exchange Online posta kutularını arıyoruz.

    Senaryo 2#2 - Belirli bir zaman aralığından önce oluşturulan Exchange Online posta kutusu hakkında bilgi alma.

    Mevcut senaryoda, Belirli bir zaman aralığından önce oluşturulan Exchange Online posta kutuları hakkında bilgi almamız gerekiyor (belirli bir zaman aralığında oluşturulan Exchange Online posta kutularını aradığımız önceki senaryoya kıyasla) zaman aralığı).

    Tanımladığımız zaman aralıkları - geçerli tarihten itibaren iki aydır.
    Almak istediğimiz bilgi, bu zaman aralığından önce oluşturulmuş Exchange Online posta kutuları hakkındaki bilgilerdir.

    Örneğin, geçerli tarihin 12/15/2016 olması durumunda sonuçlar şu şekilde olacaktır: tarihten önce oluşturulan tüm Exchange Online posta kutuları - 10/01/2016 .

    Bu gereksinimi karşılamak için PowerShell operatörünü -le (Küçük veya eşit) kullanıyoruz.

    X Gün önce oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte, "40 gün" veya daha fazla zaman aralığından önce oluşturulmuş Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).Adddays(-40))} | FT DisplayName,WhenCreated

    X Gün önce oluşturulan Exchange Online posta kutularını görüntüleyin.

    Aşağıdaki örnekte, "40 gün" veya daha fazla zaman aralığından önce oluşturulmuş Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).Adddays(-40))} | FT DisplayName,WhenCreated

    X Ay öncesinde oluşturulan Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte, "2 ay" veya daha uzun zaman aralığından önce oluşturulmuş Exchange Online posta kutuları hakkında bilgi almak istiyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Where {$_.WhenCreated -le ((Get-Date).AddMonths(-2))} | FT DisplayName,WhenCreated

    2#2 - Exchange Online posta kutusu hakkında bilgi alın - Son Oturum Açma Tarihi

    Aşağıdaki bölümde, Exchange kullanıcısının Exchange Online posta kutusuna eriştiği veya erişmediği Son Oturum Açma Tarihi hakkında "filtrelenmiş bir arama sonucu" görüntüleyecek bir PowerShell sorgusunun nasıl oluşturulacağını inceliyoruz.

    Senaryo 1#2 - Kullanıcı tarafından belirli bir zamanda "kullanılan" Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin.

    Bu senaryoda, belirli bir zaman aralığında "sahipleri" tarafından "kullanılan" (erişilen) Exchange Online posta kutuları hakkında bilgi bulmak istiyoruz.

    Bu gereksinimi karşılayabilmek için PowerShell operatörünü “-ge” (Büyük veya Eşit) kullanıyoruz.

    Örneğin, PowerShell komutu “Geçen hafta sahipleri tarafından erişilen Exchange Online posta kutularını bulmak istiyorum” demek yerine, “LastLogonTime” değerinin büyük veya ona eşit olduğu Exchange Online posta kutularını görüntüler. ge) “1 haftaya kadar. ”

    Not - Mevcut PowerShell operatörleri hakkında daha fazla bilgiye ihtiyacınız varsa güncel makale serisinin ilk makalesini okuyun.

    Kullanıcının son X dakika içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 160 dakika içinde erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).Addminutes(-160))} | FT DisplayName,LastLogonTime

    Kullanıcının son X Saat içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 40 saat içinde erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).AddHours(-40))}| FT DisplayName,LastLogonTime

    Kullanıcının son X Gün içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 40 gün içinde erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).Adddays(-30))}| FT DisplayName,LastLogonTime

    Kullanıcının son X Ay içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 2 ayda erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date).AddMonths(-2))}| FT DisplayName,LastLogonTime

    Belirli bir ayda kullanıcının eriştiği (posta kutusunda kullanıcı oturum açma) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte, Ağustos (8) ayında erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {($_.LastLogonTime).Month -eq 8}| FT DisplayName,LastLogonTime

    Kullanıcının son X Yıl içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 2 yılda erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date). AddYears(-2))}| FT DisplayName,LastLogonTime

    Belirli bir yılda kullanıcının eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte 2016 yılında erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi

    Get-Mailbox | Get-MailboxStatistics| Where-Object {($_.LastLogonTime).Year -eq 2016}| FT DisplayName,LastLogonTime -Autosize

    Senaryo 2#2 - Belirli bir zaman aralığında kullanıcı tarafından "KULLANILMAYAN" Exchange Online posta kutuları hakkındaki bilgileri görüntüleyin.

    Bu senaryoda, belirli bir zaman aralığında "sahipleri" tarafından "kullanılmayan" (erişilmeyen) Exchange Online posta kutuları hakkında bilgi bulmak istiyoruz.

    Bu gereksinimi karşılayabilmek için PowerShell operatörünü “-le” (Küçük veya eşit) kullanıyoruz.

    Örneğin, PowerShell komutu, “Geçen hafta sahipleri tarafından erişilmeyen Exchange Online posta kutularını bulmak istiyorum” demek yerine, Exchange Online posta kutularını görüntüler, bunların “ LastLogonTime ”, (le) ila “1 haftadan küçük veya eşittir. ”

    Not - Mevcut PowerShell operatörleri hakkında daha fazla bilgiye ihtiyacınız varsa güncel makale serisinin ilk makalesini okuyun.

    Bu tür bilgiler, kullanılmayan herhangi bir lisans için ödeme yapıp yapmadığınızı öğrenmek için yararlı olabilir!

    Kullanıcının son X Ay içinde erişemediği (kullanıcı posta kutusunda oturum açmadığı) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte, son 2 ay içinde erişilmeyen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -le ((Get-Date).AddMonths(-2))}| FT DisplayName,LastLogonTime -Autosize

    Kullanıcının son X Yıl içinde eriştiği (posta kutusuna kullanıcı girişi) Exchange Online posta kutularını görüntüleyin

    Aşağıdaki örnekte son 2 yılda erişilen Exchange Online posta kutularını arıyoruz.

    PowerShell komut sözdizimi:

    Get-Mailbox | Get-MailboxStatistics| Where-Object {$_.LastLogonTime -ge ((Get-Date). AddYears(-2))}| FT DisplayName,LastLogonTime -Autosize

      İlgili makaleler