如何从PowerShell获取换行符中的字节数?

时间:2018-07-30 23:08:13

标签: powershell powershell-v6.0

DOS / Windows换行符是两(2)个字节,0x0D0A。 UNIX / Linux换行符是一(1)个字节,0x0A。 Mac换行符是一(1)个字节,0x0D。

如何编写代码以查找每个平台上换行符的长度? Windows上的输出将产生两(2)个字节,而Linux上的输出将产生一(1)个字节。在about_Special_Characters中没有发现与此相关的任何内容。

在Windows上:

PS C:\src\t> type .\nl.ps1
'`n'
'`n'.Length
"`n"
"`n".Length

Windows和Linux都返回相同的结果。

PS C:\src\t> .\nl.ps1
`n
2


1

1 个答案:

答案 0 :(得分:4)

.NET Standard为此提供了一个API,并且始终可以从Powershell获得:

[system.environment]::newline.length

在Windows上

PS> [system.environment]::newline.length
2

在Ubuntu上

PS> [system.environment]::newline.length      
1