在PowerShell中向文本文件写新行
我正在创建一个错误日志文件。这是我目前的代码:
Add-Content -path $logpath $((get-date).tostring() + " Error " + $keyPath `
+ $value + " key " + $key +" expected: " + $policyValue `
+ "`n local value is: " +$localValue
当我对日志文件进行`Get-Content'时,它显示正确,在"local value."之前有新的一行;
然而,当我在记事本中打开日志文件时,它把所有内容都显示在一行上。我怎样才能使它在文本文件中也插入一个新行呢?
33
3
`n
是一个换行字符。Notepad(Windows 10之前)希望断行符被编码为`r`n
(回车+换行,CR-LF)。在一些有用的编辑器(SciTE, Notepad++, UltraEdit-32, Vim, ...)中打开文件,将换行符转换成CR-LF。或者使用PowerShell:你可以使用Environment class's static NewLine property来获得适当的换行:
也可以将换行符和回车符分配给变量,然后将它们附加到PowerShell脚本内的文本上: