I need to delete list from a site collection using power shell commands. Can anyone help me with the code.

[Actual requirement : Delete all list which starts with "xyz"]

link|improve this question

29% accept rate
feedback

1 Answer

up vote 4 down vote accepted

Here it is:

$startsWith = "ABC"
$site = Get-SPSite http://mycoolsite
$webs = $site.AllWebs

foreach ($web in $webs) {
    $lists = $web.Lists
    for ($index = 0; $index -lt $lists.Count; $index++) {
        if ($lists[$index].Title.StartsWith($startsWith)) {
            $lists[$index].Delete()
        }
    }
    $web.Dispose()
}

$site.Dispose()
link|improve this answer
can you also provide the generalized code to delete list with list name specified. – Monica Jagani Sep 6 '11 at 12:18
@MonicaJagani - for this generalized code: Do you know web location or do you need to search all webs in site collection to find it? You can easily modify provided code to do second: just use 'if($lists[$index].Title -eq $startsWith)'. This will delete list with name defined in $StartsWith – Vedran Rasol Sep 6 '11 at 12:30
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.