none
Como redireccionar a un txt la salida completa de un Get RRS feed

  • Pregunta

  •  Hola,

     Ojala se entienda la consulta, estoy en powershell de un exchange, quiero ver la lista completa de los dominios bloqueados y enviarla a un txt pero solo me envia lo que muestra en pantalla, no la lista total de dominios bloqueados. El comando que ejecuto es:

     GetSenderFilterConfig > c:\test.txt 

     Lo que muestra en pantalla son unos cuantos dominios bloqueados (BlockedDomains), necesito la lista completa.

     Muchas gracias!

    miércoles, 5 de agosto de 2015 21:07

Respuestas

  • A ver si ahora acertamos. Como no tengo un Exchange sobre el que lanzar el comando para probar todo lo que te pongo es "a ciegas".

    Lo primero, ¿ejecutas Get-SenderFilterConfig sin ningún parámetro, pipe, etc. o detrás de el cmdlet pones algo?

    Bueno, prueba con esto:

    Get-SenderFilterConfig | select-object blockeddomains -expand blockeddomains

    Y si fallara, por favor pon aquí lo que devuelve, para que pueda ver por donde va el tema.

    Sin información es casi imposible ayudarte, y decir "no funciona" puede ser desde que se olvidó una coma a que el tipo de dato sea diferente...

    Un saludo.

    Diego

    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:23
    viernes, 7 de agosto de 2015 14:40
  • Hola Carlos,

    La respuesta que propone Diego te debe funcionar:

    Get-SenderFilterConfig | Select-Object -ExpandProperty BlockedDomains

    También puedes cambiar el valor de la variable que controla la "cantidad de elementos a mostrar". La instrucción sería la siguiente:

    $FormatEnumerationLimit = -1

    Con esa instrucción lo que haces es quitar el límite y los "..." desaparecen.

    Ya nos dirás.

    Saludos,

    Manuel.

    • Propuesto como respuesta Manuel Cuesta martes, 1 de septiembre de 2015 16:53
    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:22
    lunes, 31 de agosto de 2015 17:07
  • Super!!! esta era la solución.. ahora puedo desplegar todos los dominios.
    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:22
    martes, 1 de septiembre de 2015 15:35

Todas las respuestas

  • Hola,

    Hay varias alternativas:

    GetSenderFilterConfig | Out-File "tufichero.txt"

    Utilizar "transcripción" (escribe la sesión completa de powershell en fichero) con 

    Start-Transcript
    GetSenderFilterConfig
    Stop-Transcript

    O si la salida la quieres en CSV puedes usar | Export-CSV en lugar de |Out-File

    Tanto para uno como para otro puedes indicar parámetros de sobreescritura, etc.

    Espero que te sirva.

    Un saludo.

    Diego

    jueves, 6 de agosto de 2015 8:23
  •  Todas esas alternativas solo llevan a un TXT lo que se muestra en pantalla, ninguna me da la opción de poder obtener la lista de dominios bloqueados completa.

     la lista de dominios bloqueados se muestra solo hasta cierta parte y luego sigue con .... por ej:

     BlockedDomains               : {ejemplo1, ejemplo2, ejemplo3, ejmeplo4, ejemplo5, ejemplo6...}

     

     

    jueves, 6 de agosto de 2015 13:07
  • Hola,

    Entonces no entendí tu pregunta. Creía que precisamente lo que buscabas era llevar a TXT la salida del comando...

    Por lo que dices ahora, creo entender que tu problema está en que la salida de tu comando lo que te devuelve es un array. ¿Es así?

    Vamos a hacer una prueba:

    $Salida = GetSenderFilterConfig
    $Salida.BlockedDomains

    Prueba esto y dime si te escribe la lista de dominios bloqueados (me guio por el nombre escrito por tí en el ejemplo, si no es el nombre que te aparece cambialo).

    Si lo anterior no te funciona prueba:

    $BlockedDomains = GetSenderFilterConfig
    foreach ($Domain in BlockedDomains)
    {
    	Write-Host $Domain
    }
    

    Y si esto tampoco sirve entonces ya necesitaré un ejemplo en el que basarme (si fuera posible el propio comando GetFilterSenderConfig para comprobar que tipo de dato devuelve).

    Espero que te sirva,

    Un saludo.

    Diego


    jueves, 6 de agosto de 2015 15:46
  • No sirve ninguna opción, te dejo la salida del comando Get-SenderFilterConfig

    RunspaceId                   : 6795259b-2598-4596-9820-12ad6a23de64
    Name                             : SenderFilterConfig
    BlockedSenders               : {}
    BlockedDomains               : {ejemplo1. ejemplo2, ejemplo3...}
    BlockedDomainsAndSubdomains  : {}
    Action                       : Reject
    BlankSenderBlockingEnabled   : True
    RecipientBlockedSenderAction : Reject
    Enabled                              : True
    ExternalMailEnabled           : True
    InternalMailEnabled            : False
    AdminDisplayName              :
    ExchangeVersion                 : 0.1 (8.0.535.0)
    DistinguishedName              : CN=SenderFilterConfig,CN=Message Hygiene,CN=Transport Settings,CN=Baldrich,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=xxxxxxxx,DC=cl
    Identity                     : SenderFilterConfig
    Guid                         : ab2ee52e-4cb6-419a-ad49-397e68e88d59
    ObjectCategory               : baldrich.cl/Configuration/Schema/ms-Exch-Message-Hygiene-Sender-Filter-Config
    ObjectClass                  : {top, msExchAgent, msExchMessageHygieneSenderFilterConfig}
    WhenChanged                  : 06-08-2015 10:40:16
    WhenCreated                  : 13-12-2014 2:25:20
    WhenChangedUTC               : 06-08-2015 13:40:16
    WhenCreatedUTC               : 13-12-2014 5:25:20
    OrganizationId                :
    Id                                    : SenderFilterConfig
    OriginatingServer            : xxx.xxx.com
    IsValid                             : True
    ObjectState                     : Unchanged

    

    jueves, 6 de agosto de 2015 17:19
  • A ver si ahora acertamos. Como no tengo un Exchange sobre el que lanzar el comando para probar todo lo que te pongo es "a ciegas".

    Lo primero, ¿ejecutas Get-SenderFilterConfig sin ningún parámetro, pipe, etc. o detrás de el cmdlet pones algo?

    Bueno, prueba con esto:

    Get-SenderFilterConfig | select-object blockeddomains -expand blockeddomains

    Y si fallara, por favor pon aquí lo que devuelve, para que pueda ver por donde va el tema.

    Sin información es casi imposible ayudarte, y decir "no funciona" puede ser desde que se olvidó una coma a que el tipo de dato sea diferente...

    Un saludo.

    Diego

    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:23
    viernes, 7 de agosto de 2015 14:40
  • Hola Carlos,

    La respuesta que propone Diego te debe funcionar:

    Get-SenderFilterConfig | Select-Object -ExpandProperty BlockedDomains

    También puedes cambiar el valor de la variable que controla la "cantidad de elementos a mostrar". La instrucción sería la siguiente:

    $FormatEnumerationLimit = -1

    Con esa instrucción lo que haces es quitar el límite y los "..." desaparecen.

    Ya nos dirás.

    Saludos,

    Manuel.

    • Propuesto como respuesta Manuel Cuesta martes, 1 de septiembre de 2015 16:53
    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:22
    lunes, 31 de agosto de 2015 17:07
  • Super!!! esta era la solución.. ahora puedo desplegar todos los dominios.
    • Marcado como respuesta Carlos Alvear C martes, 1 de septiembre de 2015 17:22
    martes, 1 de septiembre de 2015 15:35