如何Release被用户lock的文件?
2018-01-29 23:19
281 查看
在SharePoint文档被一个用户User1在使用机器上以编辑方式保持打开状态时,其他用户User2是无法对文件进行编辑的,保存文件时会提示文件被打开用户lock。
对于此问题有时我们可以联系用户User1,如果编辑完此问题要保存并关闭,之后其他人可以正常使用。但有的时候我们是无法联系User1的,此时就需要考虑在Farm
Server端release文件,让其他人继续使用。
经过验证可以通过下面Script实现:
$webUrl='http://sharepoint:2100/sites/test'
$fileUrl='file url'
$w = get-spweb $webUrl
$l = $w.lists['libraryname']
$f = $w.GetFile($fileUrl)
$i = $l.GetItemById($f.Item.Id)
$s = New-Object Microsoft.SharePoint.SPSite($w.site.id,$i.File.LockedByUser.UserToken)
$w = $s.OpenWeb($w.id)
$l = $w.lists['libraryname']
$i = $l.GetItemById($f.Item.Id)
$i.File.CheckOutStatus
$i.File.ReleaseLock($i.File.LockId)
$web.Dispose()
执行完成后,其他用户就可以正常编辑使用了。
感谢阅读。
在SharePoint文档被一个用户User1在使用机器上以编辑方式保持打开状态时,其他用户User2是无法对文件进行编辑的,保存文件时会提示文件被打开用户lock。
对于此问题有时我们可以联系用户User1,如果编辑完此问题要保存并关闭,之后其他人可以正常使用。但有的时候我们是无法联系User1的,此时就需要考虑在Farm
Server端release文件,让其他人继续使用。
经过验证可以通过下面Script实现:
$webUrl='http://sharepoint:2100/sites/test'
$fileUrl='file url'
$w = get-spweb $webUrl
$l = $w.lists['libraryname']
$f = $w.GetFile($fileUrl)
$i = $l.GetItemById($f.Item.Id)
$s = New-Object Microsoft.SharePoint.SPSite($w.site.id,$i.File.LockedByUser.UserToken)
$w = $s.OpenWeb($w.id)
$l = $w.lists['libraryname']
$i = $l.GetItemById($f.Item.Id)
$i.File.CheckOutStatus
$i.File.ReleaseLock($i.File.LockId)
$web.Dispose()
执行完成后,其他用户就可以正常编辑使用了。
感谢阅读。
相关文章推荐
- 如何查看SharePoint中文件是否被用户Lock?
- 普通用户如何增加最大文件数
- Windows Vista下如何重建用户配置文件
- 如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。其中内存只有1G。
- 如何在Oracle中建表空间、建用户并导入dmp文件详解
- 以普通用户启动的Vim如何保存需要root权限的文件
- 网页下载文件期间如何防止用户对网页进行其他操作
- 技术QA:如何更改用户配置文件和程序设置的默认位置?
- 如何使用Gilisoft File Lock来阻止exe文件运行
- 如何增加普通用户的打开文件数限制
- 如何从EXPDP导出的文件里获得用户授权的SQL语句
- linux下非root用户如何修改root权限的文件
- 文件用户如何将一个有界面的正常app和一个或多个越狱插件.deb同时安装到手机上
- 计算机本地用户配置文件如何迁移至域账户
- 判断用户权限后,如何高效的提供文件下载
- 如何避免root用户删除重要文件 fuchao1
- VC6 MFC如何打开用户在编辑框内输入的文件?
- Linux系统如何添加普通用户到 sudoers 文件
- 如何才能保证自己的资源文件(图片,xml配置文件等)不被用户删除呢?
- 如何阻止通过Outlook用户发送带Winmail.dat文件附件的邮件