使用powershell将输出格式化为邮件正文

时间:2015-03-11 10:22:38

标签: email powershell formatting

我希望在格式化的输出中显示特定目录的某个目录和文件的磁盘大小,并使用powershell将其作为正文发送到邮件中。

我在powershell代码中使用但不能将其保存在变量中:

     C:\Users\abc\Desktop\xyz\file.bat -Name powershell | Format-Wide

file.bat是:

    cd C:\Program Files (x86)\Resource Kit
    diruse  /M /* C:\Users\abc\Desktop

,输出为:

Size (mb)  Files  Directory
     0.18     23  SUB-TOTAL: C:\USERS\abc\DESKTOP\xyz
    76.40      5  SUB-TOTAL: C:\USERS\abc\DESKTOP\testreport
    76.58     28  TOTAL

我想使用powershell在邮件正文中打印此输出。 任何人都可以调查一下如何将格式化输出保存在powershell中的变量中,以便我可以获得输出

1 个答案:

答案 0 :(得分:1)

您可以通过Out-String

来管理电子邮件正文中的大致格式
$body = C:\Users\abc\Desktop\xyz\file.bat -Name powershell | Format-Wide | Out-String

请注意,您的列对齐方式与控制台中的列对齐方式不完全相同,因为电子邮件客户端将使用比例字体,控制台使用固定宽度字体。