服务器之家

服务器之家 > 正文

PowerShell中读取多行文本示例

时间:2020-07-02 10:30     来源/作者:PowerShell教程网

适用于PowerShell3.0或者更高本版

有时,你可能会偶尔发现下面的代码:

复制代码 代码如下:

$FilePath = "$env:SystemRoot\WindowsUpdate.log"
$ContentsWithLinebreaks = (Get-Content $FilePath) -join "`r`n"

 

猜猜它,想干啥子奥,Get-Content 默认将文本文件以单行读取,并且返回一个多行数组,而-join操作符可以将它们转换成一个单独的字符串。而伴随着PowerShell3.0 的低调问世,有这么一个参数: -Raw,它可以非常高效的得到上面代码同样的结果:

复制代码 代码如下:

$FilePath = "$env:SystemRoot\WindowsUpdate.log"
$ContentsWithLinebreaks = (Get-Content $FilePath) -join "`r`n"
$ContentsWithLinebreaks2 = Get-Content $FilePath -Raw
$ContentsWithLinebreaks -eq $ContentsWithLinebreaks2


试着运行上面的代码, $ContentWithLinebreaks 和$ContentWithLinebreaks2可能比较的结果略微有所不同,其不同可能只是换行符而已。

 

那我们继续辨别真伪,果不其然:

复制代码 代码如下:

PS> $ContentsWithLinebreaks -eq $ContentsWithLinebreaks2.TrimEnd("`r`n")
True

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
返回顶部