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:
- Filtrelenmiş arama oluşturmak için PowerShell " Where ifadesini " kullanma | Office 365 ve Exchange Online nesneleri
- Office 365 nesnelerini görüntülemek için PowerShell'i kullanın
- 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-MailboxTü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 UnlimitedExchange 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-MemberPowerShell 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).CountPowerShell “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 RecipientTypeDetailsPowerShell 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,RecipientTypeDetailsPowerShell 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 UserMailboxArama 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,RecipientTypeDetailsArama 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,RecipientTypeDetailsArama 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,RecipientTypeDetailsNot - Ç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,RecipientTypePowerShell 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 UserMailboxTüm Exchange Online kişileri hakkındaki bilgileri görüntüle
PowerShell komut sözdizimi:
Get-Contact | FT Name,RecipientTypeTüm Exchange Online posta kişileri hakkındaki bilgileri görüntüleme
PowerShell komut sözdizimi:
Get-MailContact | FT Name,RecipientTypePowerShell konsolu çıktı örneği:
PS C:\> Get-MailContact | FT Name,RecipientType
Name RecipientType
---- -------------
Allie Bellew MailContact
Chris Norred MailContact
Cindy White MailContactTü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,RecipientTypePowerShell konsolu çıktı örneği:
PS C:\> Get-Mailuser | FT Name,RecipientType
Name RecipientType
---- -------------
ed200 MailUser
ex2007 MailUser
ex2010 MailUser
ex2013 MailUserTüm Exchange Online kullanıcıları hakkındaki bilgileri görüntüleyin
PowerShell komut sözdizimi:
Get-User | Sort RecipientType | Select DisplayName,RecipientTypePowerShell 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 UserMailboxExchange 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,GroupTypePowerShell 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,RecipientTypePowerShell 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 DynamicDistributionGroupBirleş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,AccessTypePowerShell 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,GroupTypePowerShell 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, SecurityEnabledExchange 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,EmailAddressesPowerShell 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 PublicFolderExchange 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 “\” -RecursePowerShell 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,EmailAddressesPowerShell 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,EmailAddressesPowerShell 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, EmailAddressesPowerShell 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,IsInactiveMailboxPowerShell 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 FalseKullanı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,AccountDisabledPowerShell 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,IsInactiveMailboxPowerShell konsolu çıktı örneği:
PS C:\> Get-Mailbox -InactiveMailboxOnly |FT Name,Alias ,IsSoftDeletedByRemove,IsInactiveMailbox
Name Alias IsSoftDeletedByRemove IsInactiveMailbox
---- ----- --------------------- -----------------
Test100 Test100 True TrueBelirli 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 TimeNot: 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 pschildnamePowerShell 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 TimeDava 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:00Yerinde 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,InPlaceHoldsPowerShell 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 ,ForwardingSmtpAddressPowerShell 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.comHarici 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 ,ForwardingSmtpAddressPowerShell 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.comGAL'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,HiddenFromAddressListsEnabledPowerShell 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 TrueArş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,ArchiveStatusPowerShell 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 ActiveArş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,ArchiveStatusVEYA
PowerShell komut sözdizimi:
Get-Mailbox | Where {$_.ArchiveStatus -eq 'none'} | FT Alias,RecipientTypeDetails,ArchiveStatusPowerShell 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 NoneExchange 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,DepartmentPowerShell 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 DepartmentPowerShell 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,TitlePowerShell 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,TitlePowerShell 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,DepartmentPowerShell 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,CountryOrRegionPowerShell 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 AustraliaExchange 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. ”
- İlk değer, Exchange Online posta kutusunun oluşturulduğu “Tarih\Saat”tir. Bu değer “WhenCreated.txt” olarak tanımlanır. ”
- İ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:
- Nesne
Onun hakkında bilgi edinmek için istediğimiz belirli nesne. Nesne “Kullanıcı hesabı”, “Exchange posta kutusu” vb. olabilir. - 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 - Zaman birimi
PowerShell bize kullanabileceğimiz çeşitli “Zaman birimleri” sunar - Milisaniye, Saniye, Dakika, Saat, Gün, yıl vb. - 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:
- 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. - 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.
- 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.
- 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.
- PowerShell “nesnesi” bir “Exchange Online posta kutusudur. ”
(PowerShell cmdlet'leri tarafından temsil edilir - Get-Mailbox). - “Sorguladığımız” spesifik kullanıcı hesabı özelliği - “WhenCreated. ”
- 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,WhenCreatedPowerShell 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 PMSon 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,WhenCreatedSon 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,WhenCreatedSon 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,WhenCreatedSon 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,WhenCreatedBelirli 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,WhenCreatedSon 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,WhenCreatedBelirli 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,WhenCreatedX 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,WhenCreatedX 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,WhenCreated2#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,LastLogonTimeKullanı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,LastLogonTimeKullanı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,LastLogonTimeKullanı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,LastLogonTimeBelirli 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,LastLogonTimeKullanı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,LastLogonTimeBelirli 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 -AutosizeSenaryo 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 -AutosizeKullanı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







