การใช้คำสั่ง Search-Mailbox PowerShell - บทนำ | ตอนที่ 1#5
ชุดบทความปัจจุบันเกี่ยวข้องกับคำสั่ง PowerShell ที่มีประโยชน์และทรงพลังชื่อ - Search-Mailbox ฉันเกี่ยวข้องกับคำสั่ง Search-Mailbox PowerShell ว่าเป็น “Swiss Knife ” เพราะเราสามารถใช้คำสั่ง Search-Mailbox PowerShell สำหรับสถานการณ์หลายประเภท
เชื่อมต่อกับ Exchange Online PowerShell
เพื่อให้สามารถเรียกใช้คำสั่ง PowerShell ที่ระบุในบทความปัจจุบัน คุณจะต้องเชื่อมต่อกับ Exchange Online PowerShell
เริ่ม Windows PowerShell ในฐานะผู้ดูแลระบบ และเรียกใช้ cmdlet Connect-ExchangeOnline
Connect-ExchangeOnlineคำสั่ง Search-Mailbox PowerShell ทำหน้าที่อะไร
คำสั่ง ค้นหากล่องจดหมาย PowerShell ตามชื่อที่แนะนำทำหน้าที่เป็นเครื่องมือสำหรับผู้ดูแลระบบ Exchange เพื่อทำการค้นหาในกล่องจดหมาย Exchange (หรือหลายกล่องจดหมาย) สำหรับรายการเมลที่ระบุ
คำว่า "รายการเมล" เกี่ยวข้องกับรายการในกล่องจดหมายทุกประเภท เช่น ข้อความอีเมล การประชุมในปฏิทิน ผู้ติดต่อ งาน และอื่นๆ
คำสั่ง Search-Mailbox PowerShell มีอักขระพิเศษที่แตกต่างกันสี่ตัว
1. ผลการค้นหา
หากเชื่อมโยงกัน เราสามารถสันนิษฐานได้ว่าคำว่า "ผลการค้นหา " แปลเป็นดัชนีบางประเภท ซึ่งแสดงรายการสิ่งที่ค้นพบทั้งหมด (ไฟล์บันทึก ฯลฯ) สิ่งที่น่าสนใจเกี่ยวกับ กล่องจดหมายค้นหา “ผลการค้นหา ” ก็คือ “ผลการค้นหา ” ซึ่งถือเป็นสำเนาของรายการอีเมลต้นฉบับที่ตอบคำถามค้นหาของเรา
ตัวอย่างเช่น หากเราใช้คำสั่ง Search-Mailbox PowerShell เพื่อค้นหาข้อความอีเมลที่มีสตริงข้อความเฉพาะในกล่องจดหมายของ Bob คำสั่ง Search-Mailbox PowerShell จะช่วยให้เราคัดลอกรายการอีเมลที่ตอบได้ คำถามของเรา ("ผลการค้นหา") ไปยังร้านค้าอื่น (กล่องจดหมายเป้าหมายซึ่งจะกล่าวถึงในภายหลัง)
2. “การกระทำ ” ที่สามารถนำไปใช้ได้เมื่อใช้ Search-Mailbox
ตามที่กล่าวไว้ในส่วนก่อนหน้า คำสั่ง ค้นหากล่องจดหมาย PowerShell สามารถช่วยให้เราค้นหา (ค้นหา) รายการอีเมลเฉพาะที่จัดเก็บไว้ในกล่องจดหมาย Exchange และคัดลอกรายการอีเมลนี้ไปยังร้านค้าอื่น (กล่องจดหมาย Exchange อื่น)
"การกระทำ" เพิ่มเติมที่สามารถใช้งานได้โดยคำสั่ง Search-Mailbox PowerShell เป็นการกระทำที่น่าสนใจและทรงพลังมาก - การลบรายการเมล (การลบ "ผลการค้นหา")
นอกจากคำสั่ง Office 365 PowerShell ใหม่ชื่อ New-ComplianceSearchAction แล้ว คำสั่ง Search-Mailbox PowerShell ยังเป็นคำสั่งเดียวที่ช่วยให้ผู้ดูแลระบบ Exchange สามารถ “ลบ ” (ลบ) เมลเฉพาะได้ รายการจากกล่องจดหมาย Exchange หรือกล่องจดหมาย Exchange หลายกล่อง
คุณสามารถอ่านข้อมูลเพิ่มเติมเกี่ยวกับวิธีการลบรายการจดหมายโดยใช้คำสั่ง PowerShell New-ComplianceSearchAction ในบทความ - ค้นหาและลบข้อความอีเมลในองค์กร Office 365 ของคุณ - ความช่วยเหลือสำหรับผู้ดูแลระบบ
3. กล่องจดหมาย Exchange “ช่องว่าง”
คำสั่ง Search-Mailbox PowerShell ช่วยให้เราสามารถกำหนด "ตำแหน่ง" เฉพาะของกล่องจดหมาย Exchange ที่จะใช้การดำเนินการค้นหา
ตัวอย่างเช่น เราสามารถสั่งให้ Search-Mailbox PowerShell cmdlet ทำการค้นหาเฉพาะในโฟลเดอร์กล่องจดหมายพิเศษที่ซ่อนอยู่ซึ่งมีชื่อว่า - โฟลเดอร์อีเมลการกู้คืน (Dumpster) ที่ทำหน้าที่เป็นร้านค้าเฉพาะสำหรับ Soft Deleted และ รายการเมลที่ถูกลบแบบถาวร
4. คำค้นหา
Search-Mailbox cmdlet ช่วยให้เราสามารถกำหนดพารามิเตอร์ที่เป็นไปได้เกือบทั้งหมดสำหรับการกำหนดคำค้นหาของเรา เช่น - ผู้ส่ง ผู้รับ วันที่ ประเภทของรายการเมล สตริงข้อความเฉพาะ และอื่นๆ อีกมากมาย
นอกจากนี้ เราสามารถใช้คำค้นหาที่ซับซ้อนมากซึ่งรวมตัวกรองหลายประเภทเข้าด้วยกัน เช่น - แสดงเฉพาะรายการปฏิทินจากวันที่ที่ระบุซึ่งมีหัวเรื่องเฉพาะ
โครงสร้างคำสั่ง Search-Mailbox
Search-Mailbox cmdlet ประกอบด้วยสามส่วน:
- ส่วน A - ในส่วนนี้ เรากำหนด “วัตถุ” ที่เราต้องการกล่าวถึง วัตถุคือกล่องจดหมาย Exchange
- ส่วน B - ในส่วนนี้ เรากำหนดอักขระเฉพาะของคำค้นหาที่เราจำเป็นต้องดำเนินการ ตัวอย่างเช่น ค้นหารายการเมลที่มีสตริงข้อความเฉพาะ
- ส่วน C - ในส่วนนี้ เรากำหนด "การกระทำ" เฉพาะเจาะจงที่เราต้องการนำไปใช้กับผลการค้นหาที่เราได้รับจากส่วนก่อนหน้า
ขอบเขตการค้นหา
คำว่า "ขอบเขตการค้นหา" เกี่ยวข้องกับกล่องจดหมาย Exchange ที่เรา "ที่อยู่" เมื่อเราดำเนินการค้นหา กล่องจดหมายเฉพาะหรือกล่องจดหมายที่กำหนดเป็น “กล่องจดหมายต้นทาง”
สถานการณ์ที่ 1 - การค้นหารายการเมล | กล่องจดหมาย Exchange เดียว
ในสถานการณ์สมมตินี้ ไวยากรณ์คำสั่ง PowerShell ถูกนำมาใช้ดังนี้:
Search-Mailbox <Source Mailbox> -SearchQueryสถานการณ์ที่ 2 - การค้นหารายการเมล | กล่องจดหมาย Exchange หลายกล่อง
ในสถานการณ์สมมตินี้ ไวยากรณ์คำสั่ง PowerShell ถูกนำมาใช้โดย "ประกาศ" ขอบเขตการค้นหา ซึ่งหมายถึงกล่องจดหมาย Exchange ที่จะดำเนินการค้นหา
จากนั้นเรา "ไปป์" กลุ่มกล่องจดหมาย Exchange ไปยังคำสั่ง Search-Mailbox PowerShell
มีตัวเลือกมากมายที่เราสามารถใช้เพื่อกำหนด "กลุ่ม" เฉพาะของกล่องจดหมาย Exchange
ตัวอย่างที่ 1 - ทำการค้นหากล่องจดหมายหลายกล่อง | ตัวอย่างกล่องจดหมาย Exchange ทุกประเภท ในการค้นหารายการเมลในกล่องจดหมาย Exchange ที่มีอยู่ทั้งหมด เราสามารถใช้ไวยากรณ์คำสั่งต่อไปนี้:
Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQueryตัวอย่างที่ 2 - ทำการค้นหากล่องจดหมายหลายกล่อง | กล่องจดหมาย Exchange USER ทั้งหมด
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox") | Search-Mailbox -SearchQueryตัวอย่างที่ 3 - ทำการค้นหากล่องจดหมายหลายกล่อง | กล่องจดหมายที่ใช้ร่วมกันของ Exchange ทั้งหมด
Get-Mailbox -Filter '(RecipientTypeDetails -eq "SharedMailbox") | Search-Mailbox -SearchQueryตัวอย่างที่ 4 - ทำการค้นหากล่องจดหมายหลายกล่อง | กล่องจดหมายของห้องแลกเปลี่ยนทั้งหมด
Get-Mailbox -Filter '(RecipientTypeDetails -eq "RoomMailBox") | Search-Mailbox -SearchQueryตัวอย่างที่ 5 - ทำการค้นหากล่องจดหมายหลายกล่อง | กล่องจดหมาย Exchange - สมาชิกในกลุ่มการแจกจ่าย
ในสถานการณ์สมมตินี้ เราต้องการดำเนินการค้นหาโดยกำหนด "กลุ่มกล่องจดหมาย Exchange" ซึ่ง "เป็นของ" (สมาชิก) ของกลุ่มการแจกจ่ายเฉพาะ
Get-DistributionGroupMember <"Distribution Group name"> | Search-Mailbox -SearchQueryคำค้นหา (ตัวกรองการค้นหา)
Search-Mailbox PowerShell cmdlet รองรับไวยากรณ์ที่มีประสิทธิภาพมากซึ่งกำหนดคำค้นหา (ตัวกรองการค้นหาหรือเกณฑ์การค้นหา)
คำค้นหาถูกนำมาใช้โดยใช้พารามิเตอร์ - คำค้นหา + ตัวกรองเฉพาะที่เราต้องการใช้
ตัวกรองการค้นหาสามารถใช้เป็นคำค้นหาธรรมดาหรือเป็นคำค้นหาขั้นสูงที่เขียนด้วยภาษา KQL
ตัวอย่างที่ 1 - ค้นหารายการเมลประเภทใดประเภทหนึ่ง
เราสามารถกำหนดตัวกรองการค้นหาที่จะค้นหาเฉพาะรายการเมลบางประเภทเท่านั้น
ตัวอย่างเช่น,
หากต้องการค้นหาเฉพาะรายการ ปฏิทิน เราสามารถกำหนดคำค้นหาโดยใช้ไวยากรณ์ต่อไปนี้:
Search-Mailbox <Source Mailbox> -SearchQuery "Kind: meetings"หากต้องการค้นหาเฉพาะรายการ ที่อยู่ติดต่อ เราสามารถกำหนดคำค้นหาโดยใช้ไวยากรณ์ต่อไปนี้
Search-Mailbox <Source Mailbox> -SearchQuery "Kind: contacts"ตัวอย่างที่ 2 - ค้นหารายการเมลที่ส่งจากผู้ส่งรายใดรายหนึ่งหรือส่งไปยังผู้รับรายใดรายหนึ่ง
ในกรณีที่เราต้องการกรองผลการค้นหาโดยกำหนดผู้ส่งหรือผู้รับเฉพาะ เราสามารถใช้ไวยากรณ์ต่อไปนี้
ค้นหารายการเมลที่ส่งโดยผู้ส่งเฉพาะ:
Search-Mailbox <Source Mailbox> -SearchQuery from:"<E-mail address>"ค้นหารายการเมลที่ส่งถึงผู้รับเฉพาะ:
Search-Mailbox <Source Mailbox> -SearchQuery to:"<E-mail address>"ตัวอย่างที่ 3 - การค้นหารายการเมลที่ส่งในวันที่ระบุ
เราสามารถใช้คำค้นหาที่เกี่ยวข้องกับ "วันที่" ของรายการเมลได้
ตัวอย่างเช่น
ค้นหารายการเมลที่ส่งในวันที่ระบุ:
Search-Mailbox <Source Mailbox> -SearchQuery sent:mm/dd/yyyyค้นหารายการเมลที่ส่งในช่วงวันที่ที่ระบุ:
Search-Mailbox <Source Mailbox> -SearchQuery {sent:mm/dd/yyyy..mm/dd/yyyy}ตัวอย่างที่ 4 - การค้นหารายการเมลที่มีไฟล์แนบ
ในกรณีที่ข้อมูลที่เราค้นหาเป็นรายการเมลพร้อมไฟล์แนบ เราสามารถใช้คำค้นหาต่อไปนี้:
ค้นหารายการเมลที่มีไฟล์แนบเฉพาะ (ชื่อไฟล์แนบ):
Search-Mailbox <Source Mailbox> -SearchQuery attachment:"<Attachment file name>"ค้นหารายการเมลใด ๆ ที่มีไฟล์แนบ:
Search-Mailbox <Source Mailbox> -SearchQuery {HasAttachment -eq $true}ตัวอย่างที่ 5 - การค้นหารายการเมลที่มีสตริงข้อความเฉพาะ
หากต้องการค้นหาอีเมลด้วยสตริงข้อความในเมล SUBJECT เราสามารถกำหนดคำค้นหาโดยใช้ไวยากรณ์ต่อไปนี้
Search-Mailbox <Source Mailbox> -SearchQuery ‘Subject:"<Text String>"'หากต้องการค้นหาอีเมลด้วยสตริงข้อความในเมล BODY เราสามารถกำหนดคำค้นหาโดยใช้ไวยากรณ์ต่อไปนี้
Search-Mailbox <Source Mailbox> -SearchQuery Body:"<Text String>"'Search-Mailbox cmdlet และ "การกระทำ" ที่จำเป็น
เราสามารถกำหนด "การกระทำ" ได้สามประเภทที่คำสั่ง Search-Mailbox PowerShell จะดำเนินการ:
- สร้างไฟล์บันทึก - ตัวเลือกนี้สามารถใช้ได้ในกรณีที่เราไม่ต้องการรับสำเนารายการเมล (ผลการค้นหา) แต่เป็นเพียง “รายงาน” (บันทึก) ที่มีข้อมูลเกี่ยวกับรายการเมลแทน ที่ถูกค้นพบ
- คัดลอกรายการเมล (ผลการค้นหา) ไปยังกล่องจดหมาย "อื่น" - ตัวเลือกนี้สามารถใช้ในสถานการณ์ที่เราต้องการกู้คืนหรือบันทึกรายการเมลที่ปรากฏในผลการค้นหา
- ลบรายการเมลที่สร้างขึ้น - ตัวเลือกนี้สามารถใช้ในสถานการณ์ที่เราต้องการ "ทำลาย" (ลบ) รายการเมลที่ระบุ ตัวอย่างเช่น สถานการณ์ที่องค์กรของเราถูกไวรัสโจมตี และเราต้องการค้นหารายการเมลที่ติดไวรัสทั้งหมดแล้วลบทิ้ง
นอกจากนี้เรายังสามารถเลือกที่จะ "รวม" "การกระทำ" บางอย่างได้ ตัวอย่างเช่น เราสามารถกำหนดการดำเนินการที่รายการเมลจะถูกลบออกจากกล่องจดหมายต้นทาง แต่นอกจากนี้ สำเนาของรายการเมลจะถูกบันทึกไว้ใน "กล่องจดหมายเป้าหมาย" + สร้างไฟล์บันทึกที่มีข้อมูลเกี่ยวกับแต่ละรายการ รายการเมลที่ปรากฏในผลการค้นหา
แนวคิดของ “กล่องจดหมายต้นทาง” และ “กล่องจดหมายเป้าหมาย”
แนวคิดที่สำคัญของ Search-Mailbox PowerShell cmdlet คือแนวคิดของ:
- กล่องจดหมายต้นทาง
- กล่องจดหมายเป้าหมาย
- โฟลเดอร์เป้าหมาย
ดังที่กล่าวไว้ เวลาส่วนใหญ่การทำงานของ “ผลการค้นหา ” จะถูกแปลเป็นไฟล์บันทึกหรือเป็น คัดลอก ของรายการเมลที่พบในกระบวนการค้นหา .
เพื่อให้สามารถ “จัดเก็บ ” “ผลการค้นหา ” (ไฟล์บันทึกหรือรายการเมลที่พบ) เราจำเป็นต้องกำหนด “ร้านค้าเป้าหมาย” ซึ่งหมายถึง - กล่องจดหมายเป้าหมาย.
นอกจากนี้ เราจำเป็นต้องกำหนด โฟลเดอร์เป้าหมาย ที่จะถูกสร้างขึ้น และที่จะมีผลการค้นหา
Search-Mailbox cmdlet จะต้อง "รู้" - กล่องจดหมายต้นทาง คืออะไร กล่องจดหมายเป้าหมาย คืออะไร (ที่จะจัดเก็บการค้นหา ผลลัพธ์) และชื่อของ โฟลเดอร์เป้าหมาย คืออะไร
โฟลเดอร์เป้าหมาย
เนื่องจากเราระบุชื่อของชื่อ โฟลเดอร์เป้าหมาย แล้ว cmdlet Search-Mailbox จะสร้างโฟลเดอร์ใหม่นี้ใน กล่องจดหมายเป้าหมาย
ตัวอย่างของไวยากรณ์ PowerShell ที่เราใช้เพื่อกำหนด "เอนทิตี" เหล่านี้อาจเป็น:
Search-Mailbox <Source Mailbox> -TargetMailbox <Target mailbox> -TargetFolder <Target Folder>แบบแผนและโครงสร้างการตั้งชื่อโฟลเดอร์เป้าหมาย
ตามที่กล่าวไว้ Search-Mailbox cmdlet จะสร้าง โฟลเดอร์เป้าหมาย (ขึ้นอยู่กับชื่อโฟลเดอร์เป้าหมายที่เราระบุให้เป็นส่วนหนึ่งของคำสั่ง PowerShell) ใน กล่องจดหมายเป้าหมาย . โฟลเดอร์เป้าหมายทำหน้าที่เป็น "ร้านค้า" สำหรับผลการค้นหาและมีลำดับชั้นที่เฉพาะเจาะจง
ในแผนภาพต่อไปนี้ เราจะเห็นโครงสร้างของ โฟลเดอร์เป้าหมาย
ชื่อที่ระบุโฟลเดอร์เป้าหมาย
นี่คือชื่อที่เราระบุให้เป็นส่วนหนึ่งของพารามิเตอร์บังคับของคำสั่ง Search-Mailbox
กล่องจดหมายชื่อที่แสดง + วันที่ค้นหาปัจจุบัน
“ภายใต้ ” ชื่อของโฟลเดอร์เป้าหมาย Search-Mailbox cmdlet จะสร้างลำดับชั้นต่อไปนี้:
กล่องจดหมายต้นทาง “ชื่อที่แสดง” + เวลาในการค้นหาปัจจุบัน
“ชื่อโฟลเดอร์” ที่เก็บผลการค้นหานั้นสร้างขึ้นจากชื่อที่แสดงของกล่องจดหมายต้นทาง + เวลาในการค้นหาปัจจุบัน
โปรดสังเกตว่า “เวลา” ที่ปรากฏเป็นส่วนหนึ่งของชื่อโฟลเดอร์ถือเป็น “GMT +0”
ความหมายก็คือในสถานการณ์ส่วนใหญ่ ผลการค้นหา "เวลา" ที่ปรากฏเป็นส่วนหนึ่งของชื่อโฟลเดอร์เป็นเวลาที่แตกต่างจากเวลา \local ปัจจุบันของคุณ
ในกรณีที่คุณต้องการปรับเวลาตามเขตเวลาท้องถิ่นของคุณ คุณจะต้องเพิ่มหรือลบชั่วโมงตาม GMT ท้องถิ่นของคุณ
ตัวอย่างเช่น เขตเวลาของฉันคือ GMT+3
ในภาพหน้าจอต่อไปนี้ เราจะเห็นว่าเวลาที่กล่าวถึงคือ 10:13
ในสถานการณ์ของฉัน “เรียลไทม์ ” คือ 13:13 (10:13 + 3 ชั่วโมง)
ชื่อโฟลเดอร์ - กล่องจดหมายหลัก
Search-Mailbox cmdlet สร้างโฟลเดอร์ชื่อ - กล่องจดหมายหลัก
คำนี้เกี่ยวข้องกับ “กล่องจดหมายของผู้ใช้มาตรฐาน” ซึ่งกำหนดเป็น - กล่องจดหมายหลัก
เหตุผลที่ Search-Mailbox cmdlet อ้างถึงกล่องจดหมายมาตรฐานโดยเฉพาะก็คือ ตามทฤษฎีแล้ว ผู้ใช้ Exchange สามารถมีกล่องจดหมายเพิ่มเติมหรือกล่องจดหมายรองซึ่งอธิบายว่าเป็นกล่องจดหมายเก็บถาวร
ภายใต้กล่องจดหมายหลัก เราจะพบผลการค้นหา (สำเนาของรายการเมลต้นฉบับจากกล่องจดหมายต้นทาง) Search-Mailbox cmdlet จะคงลำดับชั้นของโฟลเดอร์เดียวกันกับที่ปรากฏใน "กล่องจดหมายต้นทาง"
รายการที่สามารถกู้คืนได้
ดังที่ได้กล่าวไปแล้ว หนึ่งในความสามารถที่ทรงพลังที่สุดของ Search-Mailbox cmdlet คือความสามารถในการค้นหาและ "ส่งออก" (คัดลอก) รายการเมลที่จัดเก็บไว้ในโฟลเดอร์อีเมลการกู้คืน (Dumpster)
ในกรณีที่ผลการค้นหารวมรายการเมลที่จัดเก็บไว้ในโฟลเดอร์เมลการกู้คืน (Dumpster) จะมีการสร้างโฟลเดอร์ใหม่ชื่อ - รายการที่กู้คืนได้
หมายเหตุ - เจ้าของกล่องจดหมายไม่สามารถมองเห็นโฟลเดอร์อีเมลการกู้คืน (Dumpster) ได้ เนื่องจากนี่เป็นโฟลเดอร์ที่ซ่อนอยู่ เฉพาะผู้ดูแลระบบ Exchange ที่ดำเนินการค้นหาเท่านั้นที่มี "สิทธิ์" เพื่อดูโฟลเดอร์นี้และเนื้อหาโฟลเดอร์เป็นส่วนหนึ่งของผลการค้นหาที่เก็บไว้ในกล่องจดหมายเป้าหมาย (ในโฟลเดอร์เป้าหมาย)
ชื่อโฟลเดอร์ - เก็บกล่องจดหมาย
ชื่อโฟลเดอร์นี้ “ปรากฏ” เฉพาะในสถานการณ์ที่ กล่องจดหมายต้นทาง มีการเก็บถาวร (กล่องจดหมายเพิ่มเติม)
ในกรณีนี้ Search-Mailbox cmdlet จะจัดเก็บผลการค้นหาที่พบในที่เก็บถาวรของกล่องจดหมายต้นทาง
กล่องจดหมายต้นทาง “ช่องว่าง” หรือ “ขอบเขต”
ในส่วนนี้ ฉันอยากจะทบทวนโดยย่อว่า cmdlet Search-Mailbox เกี่ยวข้องกับ "ช่องว่าง" ของกล่องจดหมายต้นทางอย่างไร
Search-Mailbox cmdlet กำหนด "ช่องว่าง" ของกล่องจดหมาย Exchange
- พื้นที่กล่องจดหมายหลัก
- พื้นที่โฟลเดอร์จดหมายกู้คืน (Dumpster)
- พื้นที่กล่องจดหมายเก็บถาวร
ตามค่าเริ่มต้น Search-Mailbox cmdlet จะค้นหา (ค้นหา) รายการเมลในทั้งสามส่วนข้างต้น
ในบางสถานการณ์ เราจะต้องสั่งให้ Search-Mailbox cmdlet “ละเว้น” หนึ่งใน “ช่องว่าง” เหล่านั้น หรือให้ “มีสมาธิ” เฉพาะใน “ช่องว่าง” ที่ระบุเท่านั้น
ตัวอย่างที่ 1 - ทำการค้นหาเฉพาะในโฟลเดอร์เมลการกู้คืน (SearchDumpsterOnly)
ตัวอย่างเช่น สถานการณ์ที่เราจำเป็นต้องกู้คืนรายการเมลที่ผู้ใช้ลบแบบชั่วคราวหรือลบถาวร ในกรณีนี้ เราต้องการกำหนดขอบเขตกล่องจดหมายที่เฉพาะเจาะจงมาก นั่นคือโฟลเดอร์อีเมลการกู้คืน (Dumpster)
หากต้องการจำกัดขอบเขตการค้นหาเฉพาะรายการเมลที่จัดเก็บไว้ในโฟลเดอร์เมลการกู้คืน (หรือที่เรียกว่า Dumpster) เราสามารถใช้ไวยากรณ์ต่อไปนี้:
Search-Mailbox <Source Mailbox> -SearchDumpsterOnlyตัวอย่างที่ 2 - ทำการค้นหาเฉพาะในโฟลเดอร์เมลการกู้คืน (SearchDumpsterOnly)
ในกรณีนี้ เราต้องการดำเนินการค้นหากล่องจดหมาย แต่เราไม่ต้องการให้การค้นหาทำงานในโฟลเดอร์อีเมลการกู้คืน (Dumpster) ของกล่องจดหมายต้นทาง
หากต้องการแยกโฟลเดอร์จดหมายกู้คืน (Dumpster) ออกจากผลการค้นหา เราสามารถใช้พารามิเตอร์ SearchDumpster:$False
ตัวอย่างเช่น:
Search-Mailbox <Source Mailbox> -SearchDumpster:$falseในกรณีที่คุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับ “โฟลเดอร์เมลการกู้คืน” คุณสามารถอ่านบทความ - กู้คืนรายการเมลที่ถูกลบในสภาพแวดล้อม Exchange Online | การกู้คืนรายการเดียว | 2#7
ตัวอย่างที่ 3 - ทำการค้นหาเฉพาะในกล่องจดหมายหลัก
ในกรณีที่ผู้ใช้มีกล่องจดหมายเก็บถาวร และเราต้องการแยกกล่องจดหมายเก็บถาวรออกจากกระบวนการค้นหา เราสามารถใช้พารามิเตอร์นั้น DoNotIncludeArchive
ตัวอย่างเช่น:
Search-Mailbox <Source Mailbox> -DoNotIncludeArchiveSearch-Mailbox cmdlet และการอนุญาตที่จำเป็น
การใช้ Search-Mailbox cmdlet สำหรับ "การสอดแนม" กล่องจดหมาย Exchange ต้องได้รับอนุญาตพิเศษ เนื่องจากจาก "มุมมองความเป็นส่วนตัวของข้อมูล" เรากำลังดูข้อมูลส่วนตัวของผู้ใช้ ในกรณีที่เราใช้ Search-Mailbox cmdlet เพื่อลบรายการอีเมล เรากำลังลบข้อมูลส่วนตัวของผู้ใช้
หากต้องการกำหนดบทบาทให้กับผู้ใช้โดยตรงผ่าน PowerShell ให้รันคำสั่ง PowerShell ต่อไปนี้:
New-ManagementRoleAssignment -Role "Mailbox Import Export" -User "<user name or alias>"New-ManagementRoleAssignment -Role "Mailbox Search" -User "<user name or alias>"Search-Mailbox cmdlet และข้อจำกัด
Search-Mailbox cmdlet มีข้อจำกัดสองประการที่เราควรรู้
1. “กล่องจดหมายต้นทางสูงสุด
CMdlet ค้นหากล่องจดหมาย สามารถทำการค้นหากล่องจดหมายหลายกล่องได้สูงสุด 10,000 กล่องจดหมาย
2. ผลลัพธ์การค้นหาสูงสุดเมื่อใช้คำค้นหา
เมื่อเราใช้ cmdlet Search-Mailbox + คำค้นหา ซึ่งหมายถึงการใช้พารามิเตอร์ -SearchQuery ผลลัพธ์คือ จำกัดผลลัพธ์สูงสุด 10,000 รายการ
เมื่อเราเรียกใช้ Search-Mailbox cmdlet คำเตือนต่อไปนี้จะปรากฏขึ้น:
คำเตือน: Search-Mailbox cmdlet ส่งกลับผลลัพธ์สูงสุด 10,000 ต่อกล่องจดหมายถ้ามีระบุคำค้นหา หากต้องการส่งคืนผลลัพธ์มากกว่า 10,000 รายการ ให้ใช้ New-MailboxSearch cmdlet หรือคอนโซล eDiscovery & Hold ในตำแหน่งใน Exchange Administration Center







