使用任务计划程序

时间:2016-02-02 08:56:24

标签: csv powershell automation

我正在尝试将多个CSV文件合并为一个并尝试自动执行该过程。

CSV文件的位置:c:/users/name/test

file1.csv
file2.csv
file3.csv

脚本我有它的作用:

@(Import-csv file1.csv) + @(Import-csv file2.csv) + @(Import-csv file3.csv) |
    Export-csv Total.csv

我遇到的问题是我在PowerShell中使用Task Scheduler我必须首先打开它并将目录更改为.csv文件所在的CDSet-Location c:/users/name/test以及我必须执行之后上面的脚本不确定如何一个接一个地自动化它。

  1. open powershell
  2. 更改目录
  3. 运行脚本

2 个答案:

答案 0 :(得分:0)

你可以做几件事:

  • 将计划任务的工作目录设置为c:/users/name/test。这样,您的脚本将自动在该文件夹中运行。
  • 运行Set-Location 'c:/users/name/test'更改脚本内的文件夹。
  • 在脚本中使用完整路径。

我推荐后者。如果文件夹不包含其他CSV,您可以将脚本简化为以下内容:

Get-ChildItem 'C:\users\name\test' -Filter *.csv | ForEach-Object {
  Import-Csv $_.FullName
} | Export-Csv 'C:\users\name\test\total.csv'

答案 1 :(得分:0)

我有一个开箱即用的解决方案,“如果可以使用CMD”,只需写:

C:\ yourdirWhereCsvfilesExist \ copy * .csv Combinedfile.csv

然后您将拥有一个包含所有数据的文件,名为Combinedfile.csv

希望对您有所帮助!