Búsqueda de sitios web

Buscar + Guardar una copia de elementos de correo usando PowerShell | Parte 2#5


En el artículo actual, revisaremos cómo utilizar el cmdlet Search-Mailbox PowerShell para realizar una búsqueda en un buzón de Exchange específico + copiar los resultados de la búsqueda a un "buzón de destino" (buzón de destino).

Conéctese a Exchange Online PowerShell

Para poder ejecutar los comandos de PowerShell especificados en el artículo actual, deberá conectarse a Exchange Online PowerShell.

Inicie Windows PowerShell como administrador y ejecute el cmdlet Connect-ExchangeOnline.

Connect-ExchangeOnline

Descripción del escenario

Los objetivos

Los objetivos que buscamos alcanzar son:

  1. Realice una búsqueda en un buzón de Exchange específico (Bob Mailbox). La búsqueda se implementa definiendo una Consulta de Búsqueda específica (criterios de búsqueda), que nos ayudará a localizar elementos de correo específicos que respondan a la Consulta de Búsqueda
  2. Los Resultados de la búsqueda (elementos de correo) se copiarán en un Buzón de destino y se guardarán en una carpeta dedicada (Carpeta de destino).
  3. Además, queremos crear un informe detallado (Registro) sobre cada elemento de correo que aparece en los Resultados de búsqueda (el archivo de Registro/Informe se guardará en la Carpeta de destino ). )

Buzón de origen + buzón de destino (y carpeta de destino)

  • El buzón de origen (el buzón en el que realizamos la búsqueda) es el buzón de Bob
  • El buzón de destino que utilizamos para almacenar el resultado de la búsqueda (los elementos de correo) es el de Adele.
  • El nombre de la Carpeta de destino será - Resultados de la búsqueda - Bob

El ámbito de búsqueda del buzón

De forma predeterminada, el cmdlet Search-Mailbox realiza una búsqueda en el “Buzón de origen” que incluye los siguientes “espacios del buzón”:

Buzón principal

  1. El cmdlet Search-Mailbox realizará una búsqueda relacionada con todas las carpetas y subcarpetas del buzón principal.
  2. Carpeta de correo de recuperación: de forma predeterminada, el cmdlet Search-Mailbox también buscará elementos de correo almacenados en la carpeta de correo de recuperación (el contenedor de basura).

Buzón de archivo

En caso de que el buzón de origen tenga un buzón de archivo,

  1. El cmdlet Search-Mailbox realizará una búsqueda relacionada con todas las carpetas y subcarpetas del buzón de archivo.
  2. Carpeta de correo de recuperación: de forma predeterminada, el cmdlet Search-Mailbox también buscará elementos de correo almacenados en la carpeta de correo de recuperación del archivo del buzón (el contenedor de basura).

En la siguiente captura de pantalla, podemos ver un ejemplo de un escenario en el que el buzón de origen pertenece a Bob y el buzón de destino es: de Adele. buzón.

El cmdlet Search-Mailbox crea una nueva carpeta (carpeta de destino) y almacena todos los resultados de la búsqueda (copia los elementos de correo) en esta carpeta (la carpeta de destino).

La jerarquía de carpetas de resultados de búsqueda incluye dos “espacios” separados:

  1. Buzón de archivo (A en la captura de pantalla)
  2. Buzón principal (B en la captura de pantalla)

Cada uno de los “espacios del buzón” (Archivo y Primario) incluye una carpeta dedicada denominada - Elementos recuperables, que almacena los resultados de la búsqueda que se “obtuvieron” de la carpeta de correo de recuperación; Contenedor de basura (número 2 en el diagrama), que incluye elementos de correo eliminados temporalmente y eliminados definitivamente.

Uso del buzón de búsqueda para realizar una búsqueda | Sintaxis del comando PowerShell

Como se mencionó, el cmdlet Search-Mailbox es un cmdlet de PowerShell muy poderoso, que puede usar muchos tipos de filtros de consulta de búsqueda que nos ayudarán a “buscar” (buscar y copiar ) artículos de correo muy específicos.

En la siguiente sección, revisamos un par de ejemplos de las distintas consultas de búsqueda que podemos utilizar.

Buscar y copiar elementos de correo | TODOS los artículos de correo

En este ejemplo, utilizamos el cmdlet Search-Mailbox sin ningún "filtro" ni filtros de consulta de búsqueda.

En este escenario, nuestro objetivo es copiar todos los elementos de correo que existen en el buzón de origen al buzón de destino. Los resultados de la búsqueda incluirán todos los elementos de correo del buzón principal, el buzón de archivo (si existe) y la carpeta de correo de recuperación (el contenedor de basura).

Buscar + Guardar una copia TODOS los elementos de correo | Consulta de búsqueda: SIN filtro (sin consulta de búsqueda)

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -TargetMailbox <Destination mailbox>-TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox Bob -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: tipo específico de elemento de correo

En este escenario, queremos localizar (buscar) y copiar solo un tipo específico de elementos de correo del buzón de origen.

Buscar + Guardar una copia de los elementos de correo | Filtro de consulta de búsqueda: elementos del calendario

Busque tipos específicos de elementos de correo: elementos de Calendario.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery "Kind:meetings" -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery "Kind:meetings" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: elementos de contacto

Busque un tipo específico de elementos de correo: elementos Contactos.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery "Kind:contacts" -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery "Kind:contacts" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Nota: De forma predeterminada, si no se especifica, el cmdlet Search-Mailbox buscará todos los tipos de mensajes.

Al utilizar la opción del filtro de búsqueda “tipo”, los valores válidos pueden ser uno o más de los siguientes:

  • Correo electrónico
  • Reuniones
  • Tareas
  • Notas
  • Documentos
  • Revistas
  • Contactos
  • SOY

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: cadena de texto

En esta sección, utilizamos Consulta de búsqueda que busca elementos de correo que incluyan una cadena de texto específica.

Nota general: debido a que usamos comillas, la búsqueda solo obtendrá resultados en los que aparezcan todas las palabras en la cadena de texto que definimos.

Por ejemplo, en nuestro ejemplo, buscamos la cadena de texto: “Una reunión en Nueva York”. Los elementos de correo que incluyan las palabras “Nueva York” o “reunión” no aparecerán en los resultados de la búsqueda.

Sólo los elementos de correo que incluyan todas las frases de texto que aparecen entre comillas, serán considerados como “elementos de correo válidos” que respondan a la Consulta de Búsqueda (frases exactas o palabras clave en sujetos de los artículos).

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: elementos de correo con cadena de texto en el asunto del correo

Busque elementos de correo con una cadena de TEXTO específica que aparezca en un mensaje de correo electrónico Línea de asunto.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery Subject:"<Text String>" -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery Subject:"A meeting in New York" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: elementos de correo con cadena de texto en el CUERPO del correo

Busque elementos de correo con una cadena de TEXTO específica que aparezca en un Cuerpo del correo electrónico.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery body:"<Text String>" -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery Subject:"A meeting in New York" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: elementos de correo con cadena de texto en el CUERPO del correo o en el Asunto del correo

Busque elementos de correo con una cadena de TEXTO específica que aparezca en un mensaje de correo electrónico Línea de asunto o Asunto del correo.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery "<Text String>" -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de Powershell:

Search-Mailbox "Bob" -SearchQuery "A meeting in New York" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

La sintaxis de comando de PowerShell adicional que podemos usar para realizar una búsqueda que incluya dos tipos de criterios de búsqueda es:

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery {Subject:"A meeting in New York" OR body:"A meeting in New York"} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: fecha específica o rango de fechas

Información general sobre el tema “Fecha y formato de fecha”.

El tema del formato de fecha que utilizamos en la consulta Search-Mailbox es un poco complicado porque el formato de fecha se ve afectado por el formato de fecha del sistema operativo Windows, el formato de fecha del buzón de Exchange Online, etc.

Caso 1: la mayoría de las veces, el formato de fecha que necesita usar en la consulta de búsqueda es el formato de fecha de su sistema operativo Windows.

Caso 2: cuando se utiliza un formato de fecha en las consultas del buzón de búsqueda, debe estar en un formato que se ajuste a la configuración regional del servidor Exchange.

En caso de que reciba un error como: "El analizador KQL arrojó una excepción", utilice el "nombre del mes" en lugar del formato "número de mes".

Por ejemplo, en lugar de utilizar el formato de fecha (21/07/2017), utilice el siguiente formato: 02/julio/2017.

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: correos electrónicos ENVIADOS en una fecha específica

Busque elementos de correo con Enviado en una Fecha específica.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery sent:mm/dd/yyyy -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery sent:21/07/2017 -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: correos electrónicos ENVIADOS en un rango de fechas específico

Busque elementos de correo con Enviado en un Intervalo de fechas específico.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {sent:mm/dd/yyyy..mm/dd/yyyy} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery {sent:21/06/2017..07/21/2017} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: correos electrónicos RECIBIDOS en un rango de fechas específico

Busque elementos de correo que fueron recibidos en un intervalo de fechas específico.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {Received:mm/dd/yyyy..mm/dd/yyyy} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery {Received:21/06/2017..21/07/2017} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Consulta de búsqueda: correos electrónicos ENVIADOS en una fecha específica + correos electrónicos RECIBIDOS en una fecha específica

Busque elementos de correo que fueron Enviados o Recibidos en un intervalo de fechas específico.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {sent:mm/dd/yyyy OR Received: mm/dd/yyyy} -TargetMailbox <Destination mailbox> -TargetFolder <Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery {sent:30/07/2017 OR Received:30/07/2017}-TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: remitente o por destinatario

En esta sección, nos gustaría buscar elementos de correo que fueron enviados por un remitente específico o que llegaron a un destinatario específico.

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: correo electrónico enviado por un REMITENTE específico

Busque elementos de correo que fueron Enviados desde un Remitente específico (el campo DE correo ).

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery from:"<E-mail address>" -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery from:"John@o365info.com" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: correos electrónicos enviados A un DESTINATARIO específico

Busque elementos de correo que fueron Recibidos de un Destinatario específico (enviados a un destinatario: el campo de correo PARA).

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery to:"<E-mail address>" -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery to:"Alice@outlook.com" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: archivos adjuntos de correo electrónico

En esta sección, nos gustaría buscar elementos de correo que tengan un archivo adjunto.

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: correos electrónicos que incluyen un nombre de archivo adjunto específico

Busque elementos de correo que tengan un archivo adjunto con una extensión de archivo específica.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery attachment:"<Attachment file name>" -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery attachment:"Customer.pdf" -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: tipo de archivo adjunto específico (sufijo)

Busque elementos de correo que tengan un archivo adjunto con un sufijo de nombre de archivo específico.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {Attachment -like "*.<suffix>"} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery {Attachment -like "*.PDF"} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: correos electrónicos con archivos adjuntos

Busque elementos de correo que tengan un archivo adjunto.

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {HasAttachment -eq $true} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery -SearchQuery {HasAttachment -eq $true} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buscar y copiar elementos de correo | Filtro de consulta de búsqueda: consultas de búsqueda adicionales

Busque artículos de correo, que su tamaño sea “más grande” (mayor) que un tamaño específico.

Buscar + Guardar una copia de los elementos de correo | Alcance del filtro: tamaño de elementos de correo electrónico superior a X MB

Sintaxis del comando de PowerShell:

Search-Mailbox <Source Mailbox> -SearchQuery {Size -gt <size in KB or MB>} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Ejemplo de comando de PowerShell:

Search-Mailbox "Bob" -SearchQuery -SearchQuery {Size -gt 5MB} -TargetMailbox Adele -TargetFolder "Search Results - Bob" -LogLevel Full

Buzón de búsqueda | Alcance de la búsqueda en el buzón| La carpeta de correo de recuperación (Dumpster) y el buzón de archivo

En la siguiente sección, me gustaría repasar brevemente el tema "Alcance de la búsqueda de buzones".

Como se mencionó, el cmdlet Search-Mailbox realizará una búsqueda predeterminada en todas las siguientes ubicaciones de buzones de correo:

  1. Buzón principal
  2. Buzón principal: carpeta de correo de recuperación (el contenedor de basura)
  3. Buzón de archivo
  4. Buzón de archivo: carpeta de correo de recuperación (el contenedor de basura)

El cmdlet Search-Mailbox nos permite definir un alcance de búsqueda de buzón específico o excluir un alcance de buzón específico de los resultados de búsqueda.

Ámbito del buzón Carpeta de correo de recuperación (el contenedor de basura)

Una de las ventajas más notorias de los cmdlets Search-Mailbox es la capacidad que proporciona al administrador de Exchange para ver (buscar) el contenido de la carpeta de correo de recuperación (el contenedor de basura) y "buscar" un copia de los elementos de correo eliminados temporalmente + eliminados definitivamente almacenados en la carpeta de correo de recuperación.

De forma predeterminada, los cmdlets Search-Mailbox realizarán una búsqueda en el buzón principal + en la carpeta de correo de recuperación (el contenedor de basura).

Por ejemplo, en caso de que no definamos un filtro de alcance de buzón específico, la tarea de búsqueda incluirá el espacio del buzón principal + la carpeta de correo de recuperación (el contenedor de basura).

Search-Mailbox <Source Mailbox> -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -LogLevel Full

Excluir la búsqueda de la carpeta de correo de recuperación (contenedor de basura)

En caso de que queramos excluir la carpeta de correo de recuperación (el Dumpster) de la búsqueda, podemos usar el parámetro SearchDumpster y configurar el interruptor en $False, por ejemplo < fuerte>-SearchDumpster:$False.

Search-Mailbox <Source Mailbox> -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -SearchDumpster:$false -LogLevel Full

Buscar únicamente en el contenedor de basura

En caso de que queramos realizar una búsqueda solo en la carpeta de correo de Recuperación (el Contenedor), podemos usar el parámetro -SearchDumpsterOnly que especifica que solo se buscará en la carpeta Elementos Recuperables del buzón especificado.

Search-Mailbox <Source Mailbox> -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -SearchDumpsterOnly -LogLevel Full

Alcance del buzón de archivo

De forma predeterminada, en caso de que un buzón de Exchange específico tenga un archivo, siempre se busca en el archivo.

Para excluir el archivo de la búsqueda, utilice el parámetro DoNotIncludeArchive.

Search-Mailbox <Source Mailbox> -TargetMailbox <Target mailbox> -TargetFolder <Target Folder> -DoNotIncludeArchive -LogLevel Full

Redacción de filtros de búsqueda avanzados/combinados.

Una parte adicional que me gustaría mencionar brevemente es el tema de definir una consulta de búsqueda más avanzada o más sofisticada que combine dos o más “filtros” o condiciones de búsqueda.

Para definir dos o más filtros, podemos utilizar operadores lógicos como - “O”, “Y” y más.

En el siguiente diagrama podemos ver algún ejemplo de la sintaxis que utilizamos para definir una consulta de búsqueda más avanzada.

Ejemplo 1

Busque todos los elementos de correo que respondan a los siguientes criterios de búsqueda:

Elementos de correo electrónico que tienen un archivo adjunto + además, el asunto del correo es “Prueba”.

Search-Mailbox <Source Mailbox> -SearchQuery {HasAttachment -eq $true and subject:Test} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder>

Ejemplo 2

Busque todos los elementos de correo que respondan a los siguientes criterios de búsqueda:

Elementos de correo de mensajes de correo electrónico o elementos de correo de calendario o Contacto.

Search-Mailbox <Source Mailbox> -SearchQuery {kind:email OR kind:meetings} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder>

Ejemplo 3

Busque todos los elementos de correo que respondan a los siguientes criterios de búsqueda:

Artículos de correo que tienen el asunto Prueba + enviado desde john@o365info.com + enviado en una fecha específica 30/07/2017.

Search-Mailbox <Source Mailbox> -SearchQuery {Subject:"Test" AND From:"john@o365info.com" AND Sent:"30/07/2017"} -TargetMailbox <Target mailbox> -TargetFolder <Target Folder>

Artículos relacionados