簡而言之,我試圖從Powershell腳本發送一個電子郵件,其中列出了一個目錄的內容。Powershell:如何格式化Get-Childitem的電子郵件?
爲了做到這一點,我將文本存儲在一個變量中,然後將該變量插入到Send-MailMessage
中。
我的問題是這樣的。當我管的對象Out-String
如下,它不插入新行:
$mailbody += "<p>" + (get-childitem $path | select-object Name | Out-String -width 40) + "</P>"
顯然,當在提示輸入Get-Childitem
,輸出被很好地格式化用換行,然而,當存儲到一個變量然後通過電子郵件發送(在HTML電子郵件中),沒有換行符,這會導致不可讀的長文件名字符串。
我該怎麼做?
難道換行符在那裏,但不顯示?在HTML中,新行被視爲空白。 – theglauber
我認爲這是原因,但是當我刪除'-BodyAsHtml'開關以確保電子郵件是在plantext中發送的時候,仍然沒有新行 - 只是空格。 – hazymat
你是否使用Outlook作爲郵件客戶端?如果是這樣,除非您將「從純文本消息中刪除額外換行符」設置關閉,否則Outlook可能會爲您刪除換行符。 – theglauber