none
Send-MailMessage и Body из файла TXT

    Вопрос

  • каждый день создаётся некий TXT файл с содержанием:

    CreationTime : 11.04.2018 00:34:54
    Length       : 10252976128
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 11.04.2018 04:30:41
    Length       : 33279705088
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 11.04.2018 04:02:23
    Length       : 384301006848
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    :
    
    CreationTime : 11.04.2018 01:34:15
    Length       : 159368871936
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 11.04.2018 04:17:09
    Length       : 34454110208
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    

    Его нужно отправить на почту. С этим проблем нет, но есть проблема с видом тела письма: не сохраняется форматирование файла, нет переноса на новую строку:

      CreationTime : 11.04.2018 00:34:54 Length       : 10252976128 Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx Directory    :   CreationTime : 11.04.2018 04:30:41 Length       : 33279705088 Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx Directory    :   CreationTime : 11.04.2018 04:02:23 Length       : 384301006848 Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx Directory    :  CreationTime : 11.04.2018 01:34:15 Length       : 159368871936 Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx Directory    :   CreationTime : 11.04.2018 04:17:09 Length       : 34454110208 Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx Directory    :    

    Как бы эту задачу сохранения форматирования решить?

    Спасибо.

    13 апреля 2018 г. 13:13

Ответы

Все ответы

  • $body = Get-Content file.txt | Out-String
    • Помечено в качестве ответа Anahaym 13 апреля 2018 г. 13:55
    13 апреля 2018 г. 13:28
    Отвечающий
  • а в чём прикол?
    13 апреля 2018 г. 13:55
  • PS > $body = Get-Content C:\Windows\win.ini PS > $body.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True Object[] System.Array PS > "$body" ; for 16-bit app support [fonts] [extensions] [mci extensions] [files] [Mail] MAPI=1 [MCI Extensions.BAK] 3g2=MPEGVideo 3gp=MPEGVideo 3gp2=MPEGVideo 3gpp=MPEGVideo aac=MPEGVideo adt=MPEGVideo adts=MPEGVideo m2t=MPEGVideo m2ts=MPEGVideo m2v= MPEGVideo m4a=MPEGVideo m4v=MPEGVideo mod=MPEGVideo mov=MPEGVideo mp4=MPEGVideo mp4v=MPEGVideo mts=MPEGVideo ts=MPEGVide o tts=MPEGVideo

    PS > $body = Get-Content C:\Windows\win.ini -Raw PS > $body.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object PS > $body = Get-Content C:\Windows\win.ini | Out-String PS > $body.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object PS > "$body" ; for 16-bit app support [fonts] [extensions] [mci extensions] [files] [Mail]


    14 апреля 2018 г. 7:30
    Отвечающий
  • в том то и дело, у меня вывод "$body" другой (как надо) и его же я ожидал в теле письма.

    PS C:\Windows\system32> $body = Get-Content C:\scripts\backup\$twoweeksago.txt
    
    PS C:\Windows\system32> $body
    
    
    CreationTime : 14.04.2018 00:35:02
    Length       : 10244587520
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 14.04.2018 04:29:19
    Length       : 33277607936
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 14.04.2018 04:00:53
    Length       : 384288423936
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    CreationTime : 14.04.2018 01:34:33
    Length       : 159423397888
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 20
    
    CreationTime : 14.04.2018 04:15:43
    Length       : 34460401664
    Name         : a19569cf-bbdc-49d2-958f-3e1ae77a23e7.vhdx
    Directory    : 
    
    
    PS C:\Windows\system32> $body.GetType()
    
    IsPublic IsSerial Name                                     BaseType                                                                                                                                                                                                                                                                                       
    -------- -------- ----                                     --------                                                                                                                                                                                                                                                                                       
    True     True     Object[]                                 System.Array                                         
    16 апреля 2018 г. 8:10