2017-04-10 17 views
1

私は約50のファイルをファイル名で1つに整理し、そのファイルの内容を整理してから、ファイルの出力後に点線で1行にします例えばそれは、このスクリプトは、私が欲しいの形式で出力されませんではないを与えるこのPowerShellでファイルの内容を含むファイル名を取得する方法

 
File name -ABC 
xxxxxxxxxxxxxxxx (Content of the file) 
..................... (dotted line after output) 
File Name - CDE 
xxxxxxxxxxxx (Content of the file) 
................... 
Get-ChildItem C:\temp | Get-Content 

のようになります。私はファイルの名前を取得する方法を見つけることができません。

答えて

3

あなたが望むものはかなり簡単です。個々の入力ファイルを個別に処理するにはForEach-Objectループが必要で、フォーマット演算子(-f)を使用すると、データをテンプレート文字列に注入できます。

Get-ChildItem 'C:\temp' | ForEach-Object { 
    @' 
File name - {0} 
{1} 
..................... 
'@ -f $_.Name, (Get-Content $_.FullName -Raw) 
} | Out-File 'C:\path\to\output.txt'