所以我有两个文件,一个带有数字和描述列表,另一个带有数字列表。Powershell将一个文件中的行匹配到另一行中的一行。
如:
文件1包含:
10001 Screw
23456 Bolt
文件2包含:
10001
23456
23456
我想要做的就是为每一个数字出现在文件2时它添加描述它或输出数字和描述到一个新的文件。
那么结果会是什么样子:
10001 Screw
23456 Bolt
23456 Bolt
这些都只是小样本,但实际的文件有很多千行。
这是我想出来的,但它不是很正确。
$file1 = "C:\pstest\file1.txt"
$file2 = "C:\pstest\file2.txt"
Get-Content $file2 | Foreach-Object -process {Get-Content $file1 | Where-Object $_ -contains $file2 | write-host $_ }
OR
$file1 = "C:\pstest\file1.txt"
$file2 = "C:\pstest\file2.txt"
$file3 = "C:\pstest\file3.txt"
Get-Content $file2
foreach ($line in $file2){
Get-Content $file1 | Where-Object $_ -contains $line | out-file $file3
}
应该提到两者都是制表符分隔的。 – 2015-02-12 23:43:54