PowerShell kullanarak Birden Çok Exchange posta kutusundan (Toplu) posta öğelerini silin | Bölüm 4#5
Mevcut makale, Search-Mailbox cmdlet'ini kullanarak posta öğelerini silme konusuna giriş niteliğindedir. Bu makalede, birden çok Exchange posta kutusundaki posta öğelerini silmek (Toplu Silme) için Search-Mailbox cmdlet'ini kullanmanın bazı çeşitli senaryolarını inceliyoruz.
Exchange Online PowerShell'e bağlanın
Güncel makalede belirtilen PowerShell komutlarını çalıştırabilmek için Exchange Online PowerShell'e bağlanmanız gerekecektir.
Windows PowerShell'i yönetici olarak başlatın ve Connect-ExchangeOnline cmdlet'ini çalıştırın.
Connect-ExchangeOnlineBu makalede incelediğimiz PowerShell komutlarını çalıştırmadan önce, Search-Mailbox PowerShell cmdlet'inin bu kullanımında dikkatli olmanız gerektiğini önemle vurgulamalıyız, çünkü cmdlet'ler posta öğelerinin Sert Silinmesini gerçekleştirir.
Bu seçeneği kullanmak için iyi bir nedeniniz olmalıdır ve PowerShell sözdizimini öğrenmenizi ve kullandığınız Arama Sorgusunu tam olarak anlamanızı öneririz. Örneğin, silinen postalara ne olduğu, hangi Exchange posta kutularının etkilendiği vb.
Sonraki makalede - PowerShell kullanarak Tek Exchange posta kutusundaki posta öğelerini silme | Bölüm 5#5, tek bir Exchange posta kutusundaki posta öğelerini silmek için Search-Mailbox cmdlet'ini kullanmanın çeşitli senaryosunu inceliyoruz.
Posta öğelerini silmek için Search-Mailbox cmdlet'ini kullanmamız gereken senaryo
Exchange yöneticisinin tek bir Exchange posta kutusundan veya Çoklu Exchange posta kutularından (Toplu silme) "posta öğelerinin silinmesi" için Search-Mailbox cmdlet'ini kaydetmesi gereken senaryolara örnek olarak şunlar verilebilir:
1. Virüs saldırıları
Bir virüsün kuruluşunuzun alıcısına saldırdığı bir senaryo. Virüsün birkaç Exchange alıcısına gönderilmesi gerekiyor, ancak bu alıcının kim olduğunu bilmiyorsunuz.
Bu durumda, TÜM Exchange posta kutularında virüs dosya adını arayarak arama yapmak için Search-Mailbox cmdlet'ini kullanmak istiyoruz ve bu posta öğesini bulduktan sonra posta öğelerini klasörden silmek istiyoruz. kullanıcı posta kutusu.
2. Yanlışlıkla birden fazla alıcıya gönderilen hassas bir E-posta iletisi.
Exchange alıcısının, belirli bir posta öğesini okumaması gereken alıcılara yanlışlıkla "hassas bir E-posta iletisi" gönderdiği bir senaryo.
Ve yine bu durumda, TÜM Exchange posta kutularında arama yapmak ve bu posta öğesini “kaldırmak” (silmek) için Search-Mailbox cmdlet'ini kullanmak istiyoruz.
Search-Mailbox cmdlet'inin "posta öğesi silme" ile ilgili "mantığı"
Posta öğelerini silmek için Search-Mailbox cmdlet'ini kullanmamız gerektiğine karar verdiğimiz göz önüne alındığında, aralarından seçim yapabileceğimiz iki ana senaryo vardır:
1. Seçenek - Silinen posta öğelerinin bir kopyasını kaydetmeden, kaynak posta kutusundaki posta öğelerini silin.
Bu senaryoda, Kaynak Posta Kutusundan belirli posta öğelerini (Filtre kapsamı Arama Sorgumuzu yanıtlayan posta öğelerini) herhangi bir kopyasını kaydetmeden silmek istiyoruz. posta öğeleri.
Bu durumda, Hedef Posta Kutusu + Hedef Klasör< hakkında bilgi sağlamadan olmadan PowerShell komut sözdizimini kullanırız.
PowerShell komut sözdiziminin bir örneği şöyle olabilir:
Search-Mailbox "Source Mailbox" -DeleteContent -Force2. Seçenek - Kaynak posta kutusundaki posta öğelerini silin + Silinen posta öğelerinin bir kopyasını kaydedin.
Bu senaryoda, Kaynak Posta Kutusu'ndan belirli posta öğelerini (Filtre kapsamının Arama Sorgusuna yanıt veren posta öğeleri) silmek, ancak Silinmiş posta öğelerinin bir kopyasını bir dosyasına kaydetmek istiyoruz. Hedef Posta Kutusu (Hedef Klasörde)
Bu durumda, PowerShell komut sözdizimini + Hedef Posta Kutusu hakkında bilgi sağlayan + Hedef Klasör'ü kullanırız.
PowerShell komut sözdiziminin bir örneği şöyle olabilir:
Search-Mailbox "Source Mailbox" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force3. Seçenek - Arama yapın - Kaynak posta kutusu + Rapor Oluştur (Günlük) seçeneğinden sileceğimiz posta öğelerini bulun.
Bu senaryoda, raporu oluşturmanın yanı sıra, “sileceğimiz ancak herhangi bir “işlem” yapmadan” göndereceğimiz posta öğelerinin ayrıntılarını içeren bir rapor (Log dosyası) oluşturmak istiyoruz.
Herhangi bir işlem yapmadan yalnızca rapor oluşturmak için -LogOnly PowerShell parametresini kullanıyoruz.
Benim tavsiyem, gerçek silme işlemine başlamadan önce bu seçeneği kullanmayı düşünmenizdir. Başka bir deyişle, üzgün olmaktan daha güvenlidir!
Raporda (Günlük) görünen bilgilere baktıktan ve yalnızca belirli posta öğelerinin silinmesini “onayladıktan” sonra geri dönün ve yukarıda belirtilen seçeneklerden birini kullanın (posta öğelerini bir kopyasını kaydetmeden silin veya kaydedin) Hedef Posta Kutusu'ndaki silinen posta öğelerinin bir kopyası).
Bu durumda, PowerShell komut söz dizimini + Hedef Posta Kutusu hakkında bilgi sağlayan + rapor dosyasını "depolayacak" Hedef Klasör'ü kullanırız .
PowerShell komut sözdiziminin bir örneği şöyle olabilir:
Search-Mailbox "Source Mailbox" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -LogOnlySenaryo açıklaması
Aşağıdaki örnekte güvenli tarafta olmayı tercih ediyorum. Bu nedenle tüm PowerShell komut örnekleri, Silinmiş posta öğelerinin bir kopyasını “Hedef Posta Kutusu”na kaydettiğimiz bir senaryoyu temel alacaktır. Bu seçenekten kaçınmayı tercih etmeniz durumunda Hedef Posta Kutusu + Hedef Klasör ile ilgili bölümü PowerShell komut sözdiziminden kaldırabilirsiniz.
Hedefler
Ulaşmaya çalıştığımız hedefler şunlardır:
- Çoklu Exchange posta kutularında arama yapın (Toplu Posta Kutusu araması). Arama, Arama Sorgusunu yanıtlayan belirli posta öğelerini bulmamıza yardımcı olacak belirli bir Arama Sorgusu (arama ölçütleri) tanımlanarak gerçekleştirilir.
- Arama Sonuçlarında görünen tüm posta öğelerini Silmek istiyoruz.
- Arama Sonuçları (silinen posta öğeleri) bir Hedef Posta Kutusu'na kopyalanacak ve özel bir klasöre (Hedef Klasör) kaydedilecektir.
- Ayrıca, Arama Sonuçları'nda görünen ve Silinen her posta öğesi hakkında ayrıntılı bir rapor (Günlük) oluşturmak istiyoruz (Günlük\Rapor dosyası klasörüne kaydedilecektir) Hedef Klasör).
Kaynak posta kutusu + Hedef posta kutusu (ve Hedef Klasör)
- Kaynak Posta Kutuları (aramayı gerçekleştirdiğimiz posta kutuları) TÜM Exchange Posta Kutularıdır.
- Arama sonucunu (posta öğelerini) depolamak için kullandığımız Hedef Posta Kutusu Adele'in'idir.
- Hedef Klasör adı şu şekilde olacaktır: Arama Sonuçları Çoklu Posta Kutusu araması - SİLİNMİŞ posta öğesinin Yedeği.
Posta kutusu arama kapsamı
Varsayılan olarak Search-Mailbox cmdlet'i, aşağıdaki "Posta Kutusu alanlarını" içeren "Kaynak Posta Kutusunda" bir arama gerçekleştirir:
Birincil posta kutusu
- Search-Mailbox cmdlet'i, Birincil Posta Kutusundaki tüm klasörler ve alt klasörlerle ilgili bir arama gerçekleştirir.
- Kurtarma posta klasörü - varsayılan olarak Posta Kutusu Arama cmdlet'i, Kurtarma posta klasöründe (Çöp Kutusu) saklanan posta öğelerini de arayacaktır.
Posta kutusunu arşivle
Kaynak Posta Kutusunun Arşiv posta kutusu olması durumunda,
- Search-Mailbox cmdlet'i, Arşiv posta kutusundaki tüm klasörler ve alt klasörlerle ilgili bir arama gerçekleştirir.
- Kurtarma posta klasörü - varsayılan olarak, Posta Kutusu Arama cmdlet'i aynı zamanda posta kutusu arşivi Kurtarma posta klasöründe (Çöp Kutusu) saklanan posta öğelerini de arayacaktır.
Kurtarma posta klasörünü (Çöp Kutusu) temizleme.
Search-Mailbox cmdlet'i, Kurtarma posta klasöründe (Çöp Kutusu) saklanan posta öğelerini silme yeteneğine sahiptir.
Kurtarma posta klasörü (Çöp Kutusu), aşağıdaki türdeki silinmiş posta öğelerini depolamak için iki ayrı klasör kullanır:
- Silme - Geçici Silinen posta öğelerini saklayan klasör.
- Temizlemeler - Kalıcı Silinen posta öğelerini depolayan klasör.
Kurtarma posta klasöründe (Çöp Kutusu) saklanan posta öğelerini silmek için Search-Mailbox cmdlet'ini kullanmamız durumunda şunu belirtmek önemlidir; Search-Mailbox cmdlet'i yalnızca Silme klasöründe (Geçici Silinen posta öğelerini saklayan klasör) saklanan posta öğelerini silebilir, ancak Temizlemeler klasöründe (saklanan klasör) saklanan posta öğelerini silemez Kalıcı Silinen posta öğeleri).
Posta öğelerini silmek için Arama Posta Kutusunu kullanma | PowerShell parametreleri
Search-Mailbox cmdlet'ini kullanarak posta öğelerini silme "etkin" seçeneğine aşağıdaki PowerShell komut parametrelerini eklememiz gerekir:
1. İçeriği Sil
Bu DeleteContent parametresi, Search-Mailbox cmdlet'ine, Arama sorgusu kriterleriyle eşleşen posta öğelerini "arama ve yok etme" talimatını verir.
2. Zorla
Bu “Force” parametresi zorunlu bir parametre değildir. Bu parametrenin amacı, Search-Mailbox cmdlet'inin silinecek her posta öğesi için bizden onay istemesini engellemektir.
Aşağıdaki şemada, Search-Mailbox cmdlet'ini bilgileri (posta öğeleri) arayan ve bulan bir araçtan, postaları yok eden (Sert Silme) ölümcül bir silaha "dönüştüren" ek parametreleri görebiliriz. öğeler!
“Çoklu posta kutusu araması” terimi
Mevcut makalede, Exchange posta kutularının bir "grubunda" veya "dizisinde" depolanan posta öğelerinde arama + posta silme işlemini gerçekleştirmek için Search-Mailbox cmdlet'inin nasıl kullanılacağını inceliyoruz.
Exchange posta kutularının tanımı çok esnek bir tanımdır çünkü "grubun" bir parçası olarak kabul edilen Exchange posta kutularını adreslerken kullanabileceğimiz birden fazla yol vardır.
Başka bir deyişle, posta kutusunun arama kapsamını tanımlamak için birçok seçeneğimiz var.
En basit örnek şu: Mevcut TÜM Exchange posta kutularıyla ilgili bir posta kutusu araması yapın. Bu senaryoda, TÜM mevcut Exchange posta kutularının “grubunu” şu şekilde tanımlıyoruz:
Get-Mailbox -ResultSize UnlimitedKarakterleri veya belirli bir posta kutusu olan “Grup”u (birden fazla posta kutusu) tanımladıktan sonra, Exchange posta kutusu grubunu Posta Kutusu Arama PowerShell komutuna “yönlendiriyoruz”.
Belirli bir Exchange posta kutusu "grubu" tanımlamak için kullanabileceğimiz birçok seçenek vardır.
Örnek 1: Birden çok posta kutusu araması gerçekleştirin | Her türlü Exchange posta kutusu.
Örneğin, mevcut tüm Exchange posta kutularındaki posta öğelerini aramak için aşağıdaki komut sözdizimini kullanabiliriz:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQueryÖrnek 2: Birden çok posta kutusu araması gerçekleştirin | Tüm Exchange KULLANICI posta kutuları.
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Search-Mailbox -SearchQueryÖrnek 3: Birden çok posta kutusu araması gerçekleştirin | Tüm Exchange Paylaşılan posta kutuları
Get-Mailbox -Filter '(RecipientTypeDetails -eq "SharedMailbox")' | Search-Mailbox -SearchQueryÖrnek 4: Birden çok posta kutusu araması gerçekleştirin | Tüm Değişim Odası posta kutuları.
Get-Mailbox -Filter '(RecipientTypeDetails -eq "RoomMailBox")' | Search-Mailbox -SearchQueryÖrnek 5: Birden fazla posta kutusunda arama yapın | Exchange Posta Kutuları - Dağıtım Grubundaki üyeler.
Bu senaryoda, belirli bir Dağıtım Grubuna “ait” (üyeler) bir “Exchange posta kutusu grubu” tanımlayarak arama yapmak istiyoruz.
Get-DistributionGroupMember "Distribution Group name" | Search-Mailbox -SearchQueryArama yapmak için Arama-Posta Kutusu'nu kullanın
Posta öğelerini arayın ve silin + posta öğelerinin bir kopyasını kaydedin | Kurtarma posta klasöründeki (Çöp Kutusu) posta öğelerini silin
Bu örnekte Search-Mailbox cmdlet'ini herhangi bir "filtre" veya Arama sorgusu filtresi olmadan kullanıyoruz.
Bunun yerine, aramayı (ve posta öğelerinin silinmesini) yalnızca Kurtarma posta klasöründe (Çöp Kutusu) depolanan posta öğeleriyle sınırlamak için SearchDumpsterOnly PowerShell parametresini kullanırız.
Bu senaryoda amacımız, Kurtarma posta klasöründe (Çöp Kutusu) saklanan tüm Geçici Silinen posta öğelerini silmek + Kaynak Posta Kutusundan silinen tüm posta öğelerinin bir kopyasını Hedef Posta Kutusuna kaydetmektir.
Belirtildiği gibi, Search-Mailbox cmdlet'i, Temizlemeler alt klasöründe (Kurtarma posta klasörünün alt klasörü) saklanan Kalıcı Silinen posta öğelerini silemez.
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Posta Kutusu Arama Kapsamı Kurtarma posta klasörü (Çöp Kutusu)
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchDumpsterOnly -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchDumpsterOnly -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - belirli Posta öğesi türü
Bu senaryoda şunları yapmak istiyoruz:
- Birden çok Kaynak Posta Kutusunda (Alışveriş posta kutuları) yalnızca belirli türdeki posta öğelerini (takvim veya kişi posta öğeleri gibi) arayın (arayın).
- Bu posta öğelerini sil
- Silinen posta öğelerinin bir kopyasını Hedef posta kutusuna kaydedin
Ara + Posta öğelerinin bir kopyasını kaydet | Arama Sorgusu filtresi - Takvim öğeleri
Belirli türdeki posta öğelerini arayın + silin - Takvim öğeleri.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Kind:meetings" -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Kind:meetings" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullAra + Posta öğelerinin bir kopyasını kaydet | Arama Sorgusu - İletişim öğeleri
Belirli türdeki posta öğelerini arayın + silin - Kişiler öğeleri.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Kind:contacts" -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Kind:contacts" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullNot: Varsayılan olarak, belirtilmediği takdirde Posta Kutusu Arama cmdlet'i tüm mesaj türü türlerini arayacaktır.
Tür arama filtresi seçeneğini kullanırken geçerli değerler aşağıdakilerden biri veya birkaçı olabilir:
- E-posta
- Toplantılar
- Görevler
- Notlar
- Dokümanlar
- Günlükler
- Kişiler
- BEN
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - Metin Dizesi
Bu bölümde, belirli bir metin dizesi içeren posta öğelerini arayan Arama Sorgusu'nu kullanıyoruz.
Genel not - tırnak işaretlerini kullandığımız için, arama yalnızca metin dizesinde tanımladığımız tüm kelimelerin göründüğü sonuçları getirecektir.
Örneğin senaryomuzda şu metin dizesini ararız: "New York'ta bir toplantı."
"New York " kelimelerini içeren posta öğeleri veya “toplantı ” Arama Sonuçlarında görünmeyecek.
Yalnızca tırnak işaretleri içinde görünen tüm metin ifadelerini içeren posta öğeleri, Arama Sorgusunu yanıtlayan "geçerli posta öğeleri" olarak kabul edilecektir (tam ifadeler veya anahtar kelimeler öğelerin konuları).
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - SUBJECT postasında Metin Dizesi içeren posta öğeleri
Bir E-posta İletisinde Konu satırında görünen belirli bir METİN dizesine sahip posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery Subject:"Text String" -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery Subject:"A meeting in New York" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item’s Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - Posta BODY'sinde Metin Dizesi içeren posta öğeleri
E-posta Gövde'de görünen belirli bir METİN dizesine sahip posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery body:"Text String" -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery Subject:"A meeting in New York" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - Posta BODY'sinde veya Posta Konusunda Metin Dizesi bulunan posta öğeleri
Bir E-posta İletisinde Konu satırında veya Posta Konusu.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Text String" -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "A meeting in New York" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel Fullİki tür arama kriteri içeren bir arama gerçekleştirmek için kullanabileceğimiz ek PowerShell komut sözdizimi şöyledir:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Subject:"A meeting in New York" OR body:"A meeting in New York"} -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - belirli Tarih veya Tarih Aralığı
“Tarih ve Tarih Formatı” konusu hakkında genel bilgiler.
Posta Kutusu Arama sorgusunda kullandığımız tarih biçiminin konusu biraz yanıltıcıdır çünkü tarih biçimi Windows İşletim Sistemi Tarih biçiminden, Exchange Online Posta Kutusu Tarih biçiminden vb. etkilenir.
Durum 1: Çoğu zaman Arama Sorgusunda kullanmanız gereken tarih biçimi, Windows İşletim Sistemi Tarih biçiminizdir.
Durum 2: Arama-Posta Kutusu sorgularında tarih formatı kullanıldığında, Exchange sunucusunun Bölgesel ayarlarına uygun bir formatta olması gerekir.
- “KQL ayrıştırıcısı bir istisna attı” gibi bir hata almanız durumunda, “ay numarası” biçimi yerine “ay adı”nı kullanın.
Örneğin, Tarih biçimini (21.07.2017) kullanmak yerine şu biçimi kullanın: 02/Temmuz/2017.
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - Belirli bir tarihte GÖNDERİLEN E-postalar
Belirli bir Tarihte gönderilmiş olan posta öğelerini arayın ve silin.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery sent:mm/dd/yyyy -TargetMailbox "Destination mailbox" -TargetFolder "Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery sent:21/07/2017 -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - Belirli bir Tarih Aralığında GÖNDERİLEN E-postalar
Belirli bir Tarih Aralığında Gönderilen posta öğelerini arayın ve silin.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {sent:mm/dd/yyyy..mm/dd/yyyy} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {sent:21/06/2017..07/21/2017} -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama Sorgusu - Belirli bir Tarih Aralığında ALINAN E-postalar
Belirli bir Tarih aralığında Alınan posta öğelerini arayın ve silin.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Received:mm/dd/yyyy..mm/dd/yyyy} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Received:21/06/2017..21/07/2017} -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - Gönderene veya Alıcıya göre
Bu bölümde belirli bir göndericiden gönderilen veya belirli bir alıcıya ulaşan posta öğelerini Arama + Silme işlemlerini yapmak istiyoruz.
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - Belirli bir GÖNDEREN tarafından gönderilen e-posta
Belirli bir Gönderenden (FROM posta alanı) Gönderilen posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery from:"E-mail address" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery from:"John@o365info.com" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - Belirli bir ALICIYA gönderilen e-postalar
Belirli bir alıcıdan alınan (belirli bir alıcıya gönderilen - TO posta alanı) posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery to:"E-mail address" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery to:"Alice@outlook.com" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - E-posta Ekleri
Bu bölümde eki olan posta öğelerini Arama + Silme işlemlerini yapmak istiyoruz.
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - Belirli bir ek dosya adı içeren e-postalar
Belirli bir Dosya uzantısına sahip eki olan posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery attachment:"Attachment file name" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery attachment:"Customer.pdf" -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - özel ek türü (son ek)
Belirli bir dosya adı sonekine sahip bir eki olan posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Attachment -like "*.suffix"} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Attachment -like "*.PDF"}-TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - Ekli E-postalar
Eki olan posta öğelerini arayın + silin.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {HasAttachment -eq $true} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DeleteContent -Force -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery -SearchQuery {HasAttachment -eq $true} -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullPosta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Arama sorgusu Filtresi - Ek arama sorguları
Posta öğelerini arayın ve silin + Posta öğelerinin bir kopyasını kaydedin | Filtre kapsamı - E-posta öğelerinin boyutu X MB'tan büyük
Boyutları belirli bir boyuttan "daha büyük" (daha büyük) olan posta öğelerini Ara + Sil.
PowerShell komut sözdizimi:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Size -gt <size in KB or MB>} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -LogLevel FullPowerShell komut örneği:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery -SearchQuery {Size -gt 5MB} -TargetMailbox "Adele" -TargetFolder "Search Results Multiple Mailbox search - DELETED mail item's Backup" -DeleteContent -Force -LogLevel FullArama-Posta Kutusu | Posta Kutusu Arama kapsamı | Kurtarma posta klasörü (çöp kutusu) ve Arşiv Posta Kutusu
Bir sonraki bölümde “Posta Kutularının arama kapsamı” konusuna kısaca değinmek istiyorum.
Belirtildiği gibi, Search-Mailbox cmdlet'i varsayılan olarak aşağıdaki posta kutusu konumlarının tümünde arama gerçekleştirir:
- Birincil posta kutusu
- Birincil posta kutusu - Kurtarma posta klasörü (Çöp Kutusu)
- Posta kutusunu arşivle
- Arşiv posta kutusu - Kurtarma posta klasörü (Çöp Kutusu)
Search-Mailbox cmdlet'i, belirli bir posta kutusu arama kapsamını tanımlamamıza veya belirli bir posta kutusu kapsamını arama sonuçlarından hariç tutmamıza olanak tanır.
Posta kutusu kapsamı Kurtarma posta klasörü (Çöp Kutusu)
Search-Mailbox cmdlet'lerinin en göze çarpan avantajlarından biri, Exchange yöneticisine Kurtarma posta klasörünün (Çöp Kutusu) içeriğini görüntüleme (arama) ve bir e-postayı "getirme" olanağı sağlamasıdır. Kurtarma posta klasöründe saklanan Geçici Silinen + Kalıcı Silinen posta öğelerinin kopyası.
Varsayılan olarak, Posta Kutusu Arama cmdlet'leri Birincil posta kutusu + Kurtarma posta klasöründeki (Çöp Kutusu) bir arama gerçekleştirir.
Örneğin, belirli bir posta kutusu kapsam filtresi tanımlamamamız durumunda, arama görevi Birincil posta kutusu alanı + Kurtarma posta klasörünü (Çöp Kutusu) içerecektir.
Search-Mailbox "Source Mailbox" -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -LogLevel FullKurtarma posta klasörü (çöp kutusu) aramasını hariç tutun
Kurtarma posta klasörünü (Çöp Kutusu) aramanın dışında bırakmak istediğimizde, SearchDumpster parametresini kullanabilir ve anahtarı $false olarak ayarlayabiliriz, örneğin <-SearchDumpster:$False.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -SearchDumpster:$false -LogLevel FullYalnızca Çöp Kutusunda Ara
Yalnızca Kurtarma posta klasöründe (Çöp Kutusu) arama yapmak istiyorsak, yalnızca belirtilen posta kutusunun Kurtarılabilir Öğeler klasörünün aranacağını belirten -SearchDumpsterOnly parametresini kullanabiliriz.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -SearchDumpsterOnly -LogLevel FullPosta kutusu kapsamını arşivle
Varsayılan olarak, belirli bir Exchange posta kutusunun bir arşivi olması durumunda, arşiv her zaman aranır.
Arşivi aramanın dışında bırakmak için DoNotIncludeArchive parametresini kullanın.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -TargetMailbox "Target mailbox" -TargetFolder "Target Folder" -DoNotIncludeArchive -LogLevel FullGelişmiş/birleşik arama filtreleri yazma
Kısaca değinmek istediğim ek bir bölüm, iki veya daha fazla “filtre” veya arama koşulunu birleştiren daha gelişmiş veya daha karmaşık bir arama sorgusunun tanımlanması konusudur.
İki veya daha fazla filtre tanımlamak için - “OR”, “AND” gibi mantıksal operatörleri kullanabiliriz.
Aşağıdaki şemada, daha gelişmiş bir Arama Sorgusu tanımlamak için kullandığımız sözdiziminin bazı örneklerini görebiliriz.
Örnek 1
Aşağıdaki arama kriterlerine yanıt veren tüm posta öğelerini arayın:
Ekli posta öğeleri + ayrıca posta konusu “Test” olur.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {HasAttachment -eq $true and subject:Test} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder"Örnek 2
Aşağıdaki arama kriterlerine yanıt veren tüm posta öğelerini arayın:
posta veya takvim içindeki posta öğeleri.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {kind:email OR kind:meetings} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder"Örnek 3
Aşağıdaki arama kriterlerine yanıt veren tüm posta öğelerini arayın:
Konusu Test olan + john@o365info.com adresinden gönderilen + belirli bir tarihte 30/07/2017 gönderilen posta öğeleri.
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery {Subject:"Test" AND From:"john@o365info.com" AND Sent:"30/07/2017"} -TargetMailbox "Target mailbox" -TargetFolder "Target Folder"



