2011-11-23 4 views
0

膨大な数のテキストファイルで作業する必要があります。私はファイルを1つのファイルにまとめることができます。しかし、私も自分の仕事にファイル名を使用しています。ファイルのテキストの前にExcel形式で保存したいのですが、最初の列にはファイル名を、列には後でデータを入れることができます。ファイルを統合するWindowsスクリプト

ご協力いただければ幸いです。ありがとう。

+0

どのプログラマー言語を使いたいですか? – reporter

+0

Windowsスクリプト。私はPowershellを持っています – user1061514

+0

あなたの実際のスクリプトを投稿してください。それはあなたを助けようとする出発点です。 –

答えて

1

ここにPowershellスクリプトがあります。私は、あなたはまだそれを磨く、それをリファクタリングする必要があり、それは完璧だと装っていないよ:あなたは今、それが唯一のPS1ファイルに対して

[System.Threading.Thread]::CurrentThread.CurrentCulture = New-Object System.Globalization.CultureInfo("en-US") 

$excel = new-Object -comobject Excel.Application 
$excel.visible = $false 

$workBook = $excel.Workbooks.Add() 
$sheet = $workBook.Sheets.Item(1) 
$sheet.Name = "Files" 
$sheet.Range("A1", "B1").Font.Bold = $true 
$sheet.Range("A1","A2").ColumnWidth = 40 
$sheet.Range("B1","B2").ColumnWidth = 100 

$sheet.Cells.Item(1,1) = "Filename" 
$sheet.cells.Item(1,2) = "Content" 

$files = get-childitem C:\PST -recurse | where {$_.extension -eq ".ps1"} 
$index = 2 

foreach($file in $files) 
{ 
    $sheet.Cells.Item($index,1) = $file.FullName 
    $sheet.Cells.Item($index,2) = [System.IO.File]::ReadAllText($file.FullName) 
    $index++ 
} 

$workBook.SaveAs("C:\PST\1.xlsx") 
$excel.Quit() 

注意を探しているように、特定のファイル拡張子を探すために、それを少し変更する必要がありますしかし、少なくともそれはあなたに指示を与えるでしょう

+1

インストールされたオフィスバージョンに基づいて、$ workBook.SaveAs( "C:\ PST \ 1.xlsx")または$ workBook.SaveAs( "C:\ PST \ 1.xls") –

関連する問題