我有一个文本文件,如下所示。请注意,我已用“junkdata”替换了垃圾数据。这只是我目前无用的数据,还有空白行。
junkdata 1
uid=1
junkdata 2
junkdata 3
junkdata 4
abc value1 def
pqr value1 kjks
sds value1 9982
asd value1 qwe
junkdata 5
junkdata 6
junkdata 7
uid=2
junkdata 8
junkdata 9
junkdata 10
aas value2 dg
sds value2 kwq
sdf value2 99wqa
gffs value2 ddg
junkdata11
junkdata12
junkdata13
我希望使用powershell以下列格式获取数据:
value uid
----- ---
Value1 1
Value2 2
非常感谢任何帮助。
答案 0 :(得分:0)
试试这个应该可行。使用你的例子进行测试。
$FileListArray = @()
$FilesName = "c:\test\t1.txt"
Foreach($file in Get-Content $FilesName | Where-Object {$_ -match "(uid\=\d)|(value\d)"})
{
IF($file -match "(value\d)")
{$file = $file -replace "(.+)(value\d)(.+)",'$2'
$FileListArray += ,@($file)
}
Else{$FileListArray += ,@($file)}
}
$FileListArray