2
特定行因此,文件夾結構如下所示:PowerShell的 - 複製從多個特定嵌套文件
RootFolder
- RootFolder
- SubFolder1
- SubSubFolder1
- totals.txt
- SubSubFolder2
- totals.txt
- SubSubFolder1
- SubFolder2
- SubSubFolder1
- totals.txt
- SubSubFolder2
- totals.txt
- SubSubFolder1
- SubFolder1
我想要做的是遞歸通過這些子文件夾的文件totals.txt走。閱讀內容,並將行22,26,30,34,38和42(第一行爲0而不是1)複製到單個組合文件中。
我開始使用此代碼:
Get-ChildItem -Recurse | Where-Object {$_ -like "totals.txt" } | Get-Content | Select-Object -Index 22,26,30,34,38,42 | Add-Content "DataInportFile.txt"
然而,這隻能找到RootFolder \子文件夾\ SubSubFolder \ totals.txt,然後退出腳本。不是我正在尋找...
我需要的是上面的腳本繼續遞歸搜索下一個文件和下一個,直到所有的目錄已經在結構中搜索。所以我用這個:
Get-ChildItem -Recurse | ForEach-Object {$_ -like "totals.txt" } | Get-Content | Select-Object -Index 22,26,30,34,38,42 | Add-Content "DataInportFile.txt"
然而,這個腳本錯誤
C:\Users\user1\scripts\Untitled1.ps1:1 char:69
+ ... urse | ForEach-Object {$_ -like "totals.txt" } | $_.filename #| Get- ...
+ ~~~~~~~~~~~
Expressions are only allowed as the first element of a pipeline.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ExpressionsMustBeFirstInPipeline
我可以利用一些幫助搞清楚這個PowerShell腳本的其餘部分。如此接近但沒有歡樂。謝謝您的幫助。
'GET-ChildItem -Recurse篩選器 「totals.txt」 |'沒有哪裏效率更高。 – LotPings