从CSV中的值创建文件夹

时间:2011-09-12 09:04:04

标签: file powershell csv

我正在开发一个较大的脚本解决方案的一小部分,我需要根据存储在CSV中的值创建文件夹,然后根据csv列中的值将适用的文件移动到新文件夹中。

CSV格式:

fileName, folder
AC002       Y
AC034       Y
AC001
X2400       Y
AC006
AC007
AC009       Y

这是我为此问题工作的代码:

$sourceDir = read-host "Please enter source Dir:"

$csv = import-csv C:\scripts\files\files.csv
$csv | where {$_.folder -eq 'Y'} | % {
            $path = $sourceDir + "\" + $_.fileName 
            if(-not (Test-Path $path))
            {
                md $path

            }#end if
        }#end for

下一步可能会有点棘手。

感谢Shay Levy的帮助, 克雷格

1 个答案:

答案 0 :(得分:1)

试试这个,它会创建文件夹,即使它存在。如果您需要,我们可以更改它,并仅创建不存在的文件夹:

$csv = import-csv C:\scripts\files\files.csv
$csv | where {$_.folder -eq 'y'} | `
       foreach { md -force (join-path $sourceDir $_.fileName) }