2014-10-08 58 views
-1

我想要做的是读取.dat文件(或.txt),只是第一行,然后该信息将其导出到csv文件。如何读取文件并将该数据发送到csv文件?

除了不发送我刚才读取的数据,它发送其他东西,如长度或信息本身的属性,一切都会好的。

下面的代码我有:

$a = Get-content C:\Users\xxxxxx\Documents\Batchtutorial\text.dat -totalcount 1 
$a | export-csv "C:\Users\xxxxxxx\Documents\Batchtutorial\newcsv.csv" 

如果我显示变量$ a它让我从文件的第一行中的信息,当出口情况是当另一个数据或从数据属性改为转到csv文件。

但是这里是一个的生成的信息:

'#' System.String类型
PSPath PSParentPath PSChildName PSDrive来PSProvider ReadCount长度 C:\用户\ ralcanta \文档\ Batchtutorial \ 141005_150210ReconciledTravelCurrentPeriod.dat C:\ Users \ ralcanta \ Documents \ Batchtutorial 141005_150210ReconciledTravelCurrentPeriod.dat C Microsoft.PowerShell.Core \ FileSystem 1 190

任何帮助,将不胜感激,谢谢。

回答

1

当您将对象传递到Export-Csv cmdlet时,该对象的属性将作为输出CSV的字段导出。如果你只想写入到CSV输入文件的第一行你的时候使用Out-File cmdlet的,而不是更好:

Get-Content 'C:\your\input.txt' -TotalCount 1 | Out-File 'C:\your\output.csv' 
+2

添加内容也可能是一个好主意,如果OP正在追加。在''Out-File''上''附加'也足够了 – Matt 2014-10-08 18:45:52

相关问题