【发布时间】:2017-12-03 02:34:15
【问题描述】:
因此,在我当前的情况下,我将 .csv 文件移动到我想要执行脚本以解析 .csv、删除特定数据并仅使用提取的数据创建新文件的位置。
我的代码很好,一切都按我的意愿工作。
但是,现在我在使用生产中的数据文件时正在运行另一组 UAT。这些 .csv 文件每天都会提供给我们,并带有日期戳。
我最初使用 text.csv 编写脚本,并希望按计划自动执行此脚本。但是现在看起来我每次都需要定义 csv 文件?这是不可行的。
是否可以使用 import-csv cmdlet 让它只加载它在文件夹中看到的 csv 文件?
这是我的代码
Import-Csv "\\pg-app05\Micros\Scripted Data Extraction\Sales\" |Where
{$_.SITEID -like "7*"} | Select
SITEID,DATE,REVENUECENTER,OVERGROUP,UNITS,PRICE,NETT,VATRATE,VAT,GROSS |
ConvertTo-CSV -NoTypeInformation | % {$_ -replace '"',""} |Out-File "\\pg-
app05\Micros\Scripted Data Extraction\Sales\sales_$(get-date -f
yyyy_MM_dd)_NI.csv" -fo -en ascii
即使文件夹中只有一个 CSV 文件,这也会返回错误。 SALES_27062017_090019.csv
这里应该只存在一个文件,所以想知道是否有可能让 powershell 只加载 csv 文件,而不管定义的文件名是什么?
我试过了
Import-Csv "\\pg-app05\Micros\Scripted Data Extraction\Sales\*.csv"
虽然它给了我一个生成的输出文件,但里面什么都没有。
【问题讨论】:
标签: powershell csv import