본문 바로가기
SharePoint 2013

sharepoint 2013 Management Shell delete list item

아래와 같이 List Item을 삭제할 때, 삭제가 안되는 경우가 종종 있다.

the file is currently checked out or locked for editing by another user

 

아래 코드를 이용하여 ps1 파일을 만들고...

$itemURL = "http://*******.com/sites/list/filename.docx"
$site = New-Object Microsoft.SharePoint.SPSite($itemURL)
$web = $site.OpenWeb()
$item = $web.GetListItem($itemURL)
$file = $item.File
$userId = $file.LockedByUser.ID
$user = $web.AllUsers.GetByID($userId)
$impSite= New-Object Microsoft.SharePoint.SPSite($web.Url, $user.UserToken);
$impWeb = $impSite.OpenWeb();
$impItem = $impWeb.GetListItem($itemURL)
$impFile = $impItem.File
$impFile.ReleaseLock($impFile.LockId)

 

. 'D:\Deploy\LockedOut\ItemInfo.ps1'

 

아래 ItemInfo.ps1으로 검증해보면 된다.

 

$itemURL = "http://*******.com/sites/list/filename.docx"
$site = New-Object Microsoft.SharePoint.SPSite($itemURL)
$web = $site.OpenWeb()
$item = $web.GetListItem($itemURL)
$file = $item.File
$file