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-ExchangeOnline

Bu 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 -Force

2. 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 -Force

3. 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" -LogOnly

Senaryo 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:

  1. Ç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.
  2. Arama Sonuçlarında görünen tüm posta öğelerini Silmek istiyoruz.
  3. Arama Sonuçları (silinen posta öğeleri) bir Hedef Posta Kutusu'na kopyalanacak ve özel bir klasöre (Hedef Klasör) kaydedilecektir.
  4. 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

  1. Search-Mailbox cmdlet'i, Birincil Posta Kutusundaki tüm klasörler ve alt klasörlerle ilgili bir arama gerçekleştirir.
  2. 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,

  1. Search-Mailbox cmdlet'i, Arşiv posta kutusundaki tüm klasörler ve alt klasörlerle ilgili bir arama gerçekleştirir.
  2. 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 Unlimited

Karakterleri 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 -SearchQuery

Arama 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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Ara + 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 Full

PowerShell 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 Full

Not: 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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Posta öğ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 Full

PowerShell 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 Full

Arama-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:

  1. Birincil posta kutusu
  2. Birincil posta kutusu - Kurtarma posta klasörü (Çöp Kutusu)
  3. Posta kutusunu arşivle
  4. 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 Full

Kurtarma 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 Full

Yalnı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 Full

Posta 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 Full

Geliş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"

İlgili makaleler