我已经能够使这个脚本工作,但我唯一能解决的是获取原始文件名并将其应用于添加了_new的输出文件名。你能不能把我推向写作方向?
Import-Csv '\\DESKTOP-QC1GB24\Allpay DD\Processing\*.csv' -Header (1..5|%{"Column$_"}) |
Select-Object Column2,Column3,Column5 -SkipLast 1 |
ConvertTo-Csv -NoTypeInformation |
Select-Object -Skip 1 |
Set-Content -Path "\\DESKTOP-QC1GB24\Allpay DD\Completed\New.CSV"
您可以在导入之前获取.csv文件列表并循环它们:
Get-ChildItem -Filter '*.csv' -Path '\\DESKTOP-QC1GB24\Allpay DD\Processing\'|
% {Import-Csv $_.Fullname -Header (1..5|%{"Column$_"}) |
Select-Object Column2,Column3,Column5 -SkipLast 1 |
ConvertTo-Csv -NoTypeInformation |
Select-Object -Skip 1 |
Set-Content -Path "\\DESKTOP-QC1GB24\Allpay DD\Completed\$($_.BaseName)_new.CSV"}
这样,$_.Fullname
指向文件的每个完整路径,$_.BaseName
为您提供没有扩展名的每个文件的名称(在本例中为.csv)。这样你可以在"_new"
期间添加Set-Content
字符串。