SharePoint 2013 批量导入、删除帐号

删除一个group里所有的帐号:

cls

########################### 

# "Enter the site URL here" 

$SITEURL = "http://xxx/IT"



# "Name of Site group from which users have to be removed" 

$SITEGROUP = "Portal Information Technology Visitors"



###########################



$site = new-object Microsoft.SharePoint.SPSite ( $SITEURL ) 

$web = $site.OpenWeb() 

"Web is : " + $web.Title



$oSiteGroup = $web.SiteGroups[$SITEGROUP];



"Site Group is :" + $oSiteGroup.Name 

$oUsers = $oSiteGroup.Users



foreach ($oUser in $oUsers) 

{ 

    "Removing user : " + $oUser.Name 

    $oSiteGroup.RemoveUser($oUser) 

}



######################################################################################################

批量导入帐号:

###########################################################################################

# 

# Title: Add-SPUser_Group.ps1

#

# Description: Adds a group of users to a SharePoint group via an answer file

#

# URL: http://techchucker.wordpress.com/2013/09/17/addbulkspusergroups/

#

# Author: Matt Anderson

# Created: 9-13-2013

#

##########################################################################################



#Region Action Function

#Action taken via user input based on menu option chosen

Function Action ($result)

{    

    if ($result -eq "A")

    {

        AnswerCreate

    }

    if ($result -eq "B")

    {



    }

    if ($result -eq "?")

    {

        clear

        #Opens Default Internet browser and navigates to the below site that holds the instructions for this program

        Start-Process -FilePath "http://techchucker.wordpress.com/2013/09/17/addbulkspusergroups/"

    }

}

#endRegion



#Region PressKey Function



#User must enter any key to continue

Function PressKey

{

    Write-Host "Press any key to continue..." -ForegroundColor Black -BackgroundColor White

    

    $x = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp,AllowCtrlC")

    

    return clear

}

#endRegion



#Region WebInput Function

#Function to request web input from user

Function WebInput

{

    $inpWeb = Read-Host "Enter the URL of the site to add users to a group"

    

    return $inpWeb

}

#endRegion



#Region GroupInput Function

#Function to request SharePoint Group input from user

Function GroupInput

{

    $inpGroup = Read-Host "Enter the SharePoint Group ID to add users to"

    

    return $inpGroup

}

#endRegion



#Region AnswerCeate Function



#Function to take answer file and add multiple users to SharePoint Group

Function AnswerCreate

{

    clear

    

    #Imports user inputted answer file

    $userList = Import-Csv ($answerFile = Read-Host "Enter path to Answer File (e.g. c:\filename.csv)")

    $web = WebInput

    $group = GroupInput

    

    Write-Output $userList

    PressKey

    

    #Iterates through each record storing variables and executing user add

    ForEach ($user in $userList)

    {

        $validateUser = $null

        $LANID = $user."LANID"

        

        $validateUser = Get-SPUser -Identity $LANID -Web $web -ErrorAction SilentlyContinue #This will throw an error if the user does not exist

                

        if($validateUser -eq $null)

        {

            Write-Host $LANID "does not exist"

            New-SPUser -UserAlias $LANID -Web $web -group $group

            Write-Host $LANID "created and added to " $group

        }

        else

        {

            #Adds user/s to the SharePoint group

            Set-SPUser -Identity $LANID -Web $web -Group $group    

            Write-Host $LANID "has been added to "$group    

        }

    }    

}

#endRegion



#Region Menu Function



#Function to display the menu for the program

Function Menu

{

    Write-Host "Add Users to SP Groups in Bulk`n`n" -ForegroundColor Black -BackgroundColor White

    Write-Host "Choose the action you would like to perform shown below.`n`n"

    

    Write-Host "    A    -    Add users in bulk using Answer File`n"

    Write-Host "    ?    -    Program Help`n"

    Write-Host "    Exit    Exits this program`n`n"

}

#endRegion



#Region Program Actions

$ErrorActionPreference="SilentlyContinue"

Stop-Transcript | out-null

$ErrorActionPreference = "Continue"



$logPath = Read-Host "Enter log path (c:\Logs)"

$date = Get-Date -UFormat %y%m%d.%H.%M.%S

$logFile = "\" + $date + "_AddUserGroup.txt"



Start-Transcript -path $logPath$logFile -append



do

{

    clear

    Menu

    $result = Read-Host "Enter your selection"

    if($result -ne "exit")

    {

        Action $result

        #Write-Host "Would you like to return to the main menu?`n`n"

        #$confirm = Confirm ($inp = Read-Host "Enter Y or N")

        $confirm = $True

    }

    else

    {

        $confirm = $false

    }

}

while($confirm -eq $True)



Stop-Transcript

#endRegion

帐号放到一个csv文件里,如下图:

image

执行步骤:

1. 运行上面的ps1脚本,输入log的path:

image

2. 输入A:

image

3. 输入site url和group id:

image

4. 输入帐号列表的csv文件:

image

你可能感兴趣的:(SharePoint)