2016-08-05 106 views
1

在Powershell中:我有2個列表 - FontIDList和FontDefinitionList。我想取第一行FontID並添加第一行FontDefinition。重複所有元素,然後寫入文本文件。我已經試過:從列表添加一行到第二列表中的一行Powershell

​​

除了$newContent = $FontIDList2 + FontDefList2 - 和我敢肯定我需要使用某種foreach,但我不知道語法。

回答

1

您可以通過索引而不是使用for循環迭代,然後拼接你的字符串:

$newContent = for ($i = 0 ; $i -lt $FontIDList.Count ; $i++) { 
    $FontIDList[$i] + $FontDefList2[$i] 
} 
Add-Content "C:\Users\dtxxxxx\Desktop\MasterFontList-TimeStamps\TestLatestDate.txt" -value $newContent 

注意Add-Content添加到一個文件,不知道這是你真正想要的東西。

+0

我也想要一個新的文本文件(也,你能不能去掉\ DT#\從目錄,並不意味着最初發布它)。我會給這個代碼一個鏡頭,看看它做了什麼! –

+0

謝謝,一旦我列出了正確的名單名稱,它就完美地工作了......(忘記了「2」,因爲我使用第二個列表來保存第一個列表中的項目)。現在在主文件上運行它! –

2

使用LINQ的ZIP方法:

$selector = [func[object, object, object]] { 
    param($x1, $x2) 
    $x1 + $x2 
} 
[Linq.Enumerable]::Zip($FontIDList2, $FontDefList2, $selector) | Add-Content out.txt 
+0

不錯的一個!沒想到要用Linq – briantist

相關問題