首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用powershell读取文本文件

使用powershell读取文本文件
EN

Stack Overflow用户
提问于 2013-09-10 18:50:29
回答 1查看 5.1K关注 0票数 1

我有一个文本文件,格式如下:

服务器名称:srvrX1

IP地址:

地点:纽约

操作系统:

服务器名称:srvrX2

IP地址:

地点:纽约

操作系统:Windows Server 2012

XYZ:

服务器名称:srvrX3

IP地址:

位置:STK

操作系统: Win2k3

服务器名称:srvrX4

IP地址:

位置:STK

操作系统:Win2k8

服务器名称:srvrX5

IP地址:

位置:STK

操作系统: RedHat Linux5

服务器名称:srvrX6

IP地址:

地点:TKY

操作系统: Windows Server 2012

每个服务器的字段数量可能不同,并且每个服务器信息之间的空行数量是随机的。我想要表格格式的输出。我是powershell的新手,有人能帮我吗?

非常感谢。Nel

EN

回答 1

Stack Overflow用户

发布于 2013-09-10 20:41:28

您可以将内容拆分为两个或多个换行符,然后再次拆分每个返回的元素,解析内容并为每个元素创建新对象:

代码语言:javascript
运行
复制
$content = Get-Content .\test.txt | Out-String

$content -split '(?:\r\n){2,}' | Foreach-Object{

    $pso = New-Object PSObject

    $_ -split '(?:\r\n)' | Where-Object {$_} | ForEach-Object{

        $var = $_ -split ':'
        $pso | Add-Member -MemberType NoteProperty -Name $var[0].Trim() -Value $var[1].Trim()
    }

    $pso

} 


ServerName IP Location OS                 
---------- -- -------- --                 
srvrX1        NY                          
srvrX2        NY       Windows Server 2012
srvrX3        STK      Win2k3             
srvrX4        STK      Win2k8             
srvrX5        STK      RedHat Linux 5     
srvrX6        TKY      Windows Server 2012
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18716939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档