我试图做一个简单的脚本,拉在文件的名称和内容的文本文件到一个CSV文件。我能够拉在所有的信息不够好,但它不是分裂成不同的列在CSV文件。当我打开CSV文件在Excel中的一切都在第一列,我需要将这两个信息分成单独的列。到目前为止,我的工作代码如下:
$Data = Get-ChildItem -Path c:path -Recurse -Filter *.txt |
where {$_.lastwritetime -gt(Get-Date).addDays`enter code here`(-25)}
$outfile = "c:path\test.csv"
rm $outfile
foreach ($info in $Data) {
$content = Get-Content $info.FullName
echo "$($info.BaseName) , $content" >> $outfile
}
字符串
我想出了如何按行分隔信息,但我需要它的列。我是新的powershell,似乎不能过去这个小减速带。任何输入将非常感谢。提前感谢!
输出量:
Itm# , TextContent
Itm2 , NextTextContent
型
我需要什么:
Itm# | Text Content |
Itm2 | NextTextContent |
型
4条答案
按热度按时间wnrlj8wa1#
除了一些语法错误,您的代码似乎按预期工作。我担心您是否在Excel中遇到文本导入问题。我稍微修改了您的代码,但它在功能上与您的代码相同。
字符串
我不知道你用的是什么版本的Excel,但请查找文本导入向导。
voase2hg2#
你是说像这样的东西吗
字符串
yjghlzjz3#
Excel会将CSV文件中的数据作为一个单独的列来处理,我总是在export-csv或convertto-csv上使用-开关将其设置为。
mccptt674#
这是因为您使用Out-File而不是Export-Csv。