使用PowerShell循环访问CSV列

时间:2015-06-03 12:58:51

标签: powershell

我有一个CSV文件,如下所示

Data,Name,Age
Test,T1,22
Test2,T2,23
Test3,T3,24

我想做一些这样的处理

Foreach(header in CSvFile.Headers)
{
    //Loop through the column data

}

编辑:在实际代码中显示我要查找的内容。

Add-PSSnapin "Microsoft.SharePoint.PowerShell" -ErrorAction SilentlyContinue
    $SiteUrl = "http://www.dev.com"
    $Web = Get-SPWeb $SiteUrl

    $description = "Group with contribute access."
    $permissionLevel = "Contribute"

    foreach($groupName in **CSV.Headers**)
    {
        $web.SiteGroups.Add($groupName, $web.SiteUsers["Test\data"], $web.SiteUsers["Test\data"], $description)  
        $group = $web.SiteGroups[$groupName]  
        $loc = Get-Location     
        $Users = "Test\data"    
        $roleAssignment = new-object Microsoft.SharePoint.SPRoleAssignment($group)  
        $roleDefinition = $web.Site.RootWeb.RoleDefinitions[$permissionLevel]  
        $roleAssignment.RoleDefinitionBindings.Add($roleDefinition)  
        $web.RoleAssignments.Add($roleAssignment)  
        $web.Update() 
        foreach ($User in **groupName.columnData**) { 
            $Web.EnsureUser($User)  
            Set-SPUser -Identity $User -Web $SiteUrl -Group $group  
        } 

    }

    $Web.Dispose();

有人可以告诉我如何在powershell中实现这一点。

由于

1 个答案:

答案 0 :(得分:0)

这样的事情怎么样:

$csvPath = "C:\temp\temp.csv"
$csv = Import-CSV $csvPath
$csvHeaders = ($csv | Get-Member -MemberType NoteProperty).name
foreach($header in $csvHeaders) {
...etc...