Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell在csv上循环';s并使用其原始名称将其放入新文件夹中_Powershell_For Loop_Filenames_Export Csv - Fatal编程技术网

Powershell在csv上循环';s并使用其原始名称将其放入新文件夹中

Powershell在csv上循环';s并使用其原始名称将其放入新文件夹中,powershell,for-loop,filenames,export-csv,Powershell,For Loop,Filenames,Export Csv,我写了下面的powershell: $Headers = @( "Purchase Order" "SKU" "Markdown" "Landed Cost" "Original Price" "Current Sale Price" "Free Stock" "OPO" "ID Style" "Supplier Style No") $Location = "\\dc1\shared\BI\HisRms" $Destination = "C:\User

我写了下面的powershell:

$Headers = @(
 "Purchase Order"
  "SKU"
  "Markdown"
  "Landed Cost"
  "Original Price"
  "Current Sale Price"
  "Free Stock"
  "OPO"
  "ID Style"
  "Supplier Style No")


$Location = "\\dc1\shared\BI\HisRms"
$Destination = "C:\Users\jonathon.kindred\Desktop\RMM\"
$files = Get-ChildItem $location -Recurse -Filter "*.csv"


Foreach ($file in $files) { Select $Headers | Export-Csv Join-Path "C:\Users\jonathon.kindred\Desktop\RMM\" $_.FullName -Force -NoTypeInformation}

我遇到的问题是,它在所有文件上都失败了,因为我没有硬编码文件路径,以使.csv结尾。如何将路径加入$Destination和原始文件名?

foreach
循环中,可以使用以下选项:

Export-Csv -Path (Join-Path $Destination $file.Name) -NoType

查询文件时返回
FileInfo
对象<代码>$files在代码中包含这些对象。每个对象都包含属性
FullName
BaseName
Name
FullName
包含文件名、文件路径和扩展名
BaseName
包含不带路径和扩展名的文件名
Name
包含扩展名为的文件名,但不包含路径。

加入路径$Destination$file.Name
。谢谢,这已经奏效,但它没有选择我的标题&只是复制空白文件,有什么想法吗?输出到CSV需要一个具有属性的对象。您可以执行
”|选择$headers |导出CSV