博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
powershell 操作sharepoint命令集
阅读量:5152 次
发布时间:2019-06-13

本文共 4319 字,大约阅读时间需要 14 分钟。

打开SharePoint 2013 Management Shell, and then run as administrator.执行如下命令

1. 添加wsp和安装

Add-SPSolution -LiteralPath "C:\DeployResource\WSP\test.wsp"
Install-SPSolution -Identity "test.wsp" -WebApplication "" -GACDeployment -Force

如果是无资源安装则去掉-WebApplication "http://domain:port/"

2. 更新wsp:Update-SPSolution -Identity SPListUpdateAD.wsp -LiteralPath "D:\BackupOfBackup\Release_20141010\WSP\SPListUpdateAD.wsp" -GACDeployment

3备份wsp:Get-SPSolution | Where {$_.Name -eq "SPListUpdateAD.wsp" } | ForEach-Object{ $_.SolutionFile.SaveAs("d:\Backwsp\"+$_.Name)}

4. 移除wsp,需要先在CA>System Settings>farm solution>retract 该wsp,在执行下面powershell script

Remove-SPSolution -Identity "hkexsitewakeuptimerjob.wsp" -Confirm:$false

5. 移除timer job

$job = Get-SPTimerJob -id 3219759c-c748-444c-9ed7-bb3afb17fc9f

$job.Delete()

6. 查询timer job

Get-SPTimerJob | where { $_.name -like “*HKEx*” } |ft id,name

7. 激活feature

Enable-SPFeature -Identity "SharePointWebPartProject_SharePointWebPartFeature" -Url  
8. 禁用feature
disable-SPFeature -id 1563deb1-0c37-481c-9463-f3581e720897 -Url   -Url 

 

 

 

 

 

 

 

 

Windows PowerShell 是一个可供管理员完全访问适用的应用程序编程接口 (API) 的命令行脚本工具,并且对于直接与 SharePoint 2010 产品 交互以对 Web 应用程序、网站集、网站、列表等进行操作的功能,能够解除锁定。另外,管理员可以编写 cmdlet(发音为“command-let”)的脚本,从而改善之前产品版本的体验。

Windows PowerShell 2.0 是安装 SharePoint 2010 产品 的必备软件。如有必要,您在运行 Microsoft SharePoint 产品准备工具时就会安装它。默认情况下,Windows PowerShell 位于以下路径:<%SystemRoot%>/System32/WindowsPowerShell/v1.0/PowerShell.exe。

访问 SharePoint 2010 产品的 Windows PowerShell

完成 SharePoint 2010 产品安装后,适用的 Windows PowerShell cmdlet 可通过 SharePoint 2010 Management Shell 或 Windows PowerShell 控制台访问。通过命令行管理程序,您可以管理 SharePoint 2010 产品 的所有方面。您可以创建新的网站集、Web 应用程序、用户帐户、服务应用程序、代理等。来自命令行管理程序的命令将基于 Microsoft .NET 平台输出 SharePoint 对象。这些对象可用作后续命令的输入对象,或者存储在本地变量中供以后使用。

使用命令行管理程序,您不必注册包含 cmdlet 的管理单元。注册适用于 SharePoint 2010 cmdlet 的 Microsoft.SharePoint.PowerShell.dll 模块是自动完成的,由位于%CommonProgramFiles%/Microsoft Shared/Web Server Extensions/14/Config/PowerShell/Registration 下的 SharePoint.ps1 文件中的 Add-PSSnapin Microsoft.SharePoint.PowerShell 行执行。如果选择使用 Windows PowerShell 控制台,则必须手动注册管理单元。

 

$ver = $host | select version 

if ($ver.Version.Major -gt 1) {$Host.Runspace.ThreadOptions = "ReuseThread"} 
Add-PsSnapin Microsoft.SharePoint.PowerShell 
Set-location $home

 

以上命令式将SharePoint的管理命令注册到Windows PowerShell中。

 

SharePoint 2010 命令

 

在SharePoint 2010 PowerShell管理单元中包含500条以上的命令,你可以用它来完成很多管理任务。我们可以通过Get-Command获取到的命令列表。单Get—Command获取到是所有的Windows PowerShell的所有基础命令,例如:功能,别名,过滤器,脚本和应用程序。在所有的命令中开头字母为SP的是SharePoint所应用的命令。如果要知道SharePoint命令有那些,我们可以通过以下的命令获取到。

 

PS > Get-Command -noun SP*

 

下图中标示的就是利用命令获取到的命令信息。

 

 

如果使用SP*这样的命令获取到的信息,非常的多。我们可以在细化以下我们的命令。例如使用 SPSite

 

PS > Get-Command -Noun SPSite

 

获取到结果:

 

 

 

使用SharePoint PowerShell 命令

 

让我们来看一下 Get-SPSite 命令是如何使用,尝试在SharePoint PowerShell使用这个命令,看一下命令返回的信息。

 

PS > Get-SPSite 

Url 
--- 

 

这个命令会返回所有网站集的Url,但如果我们需要了解单独一个网站集的更多的信息,该如何做呢。

我们可以利用Select-Object命令来显示额外的属性信息。例如:我们可以使用 –Identity 来指定一个网站集的名称,然后利用 Select-Object 来获取这个网站集的一些信息

 

PS > Get-SPSite -Identity http://localhost | Select-Object -Property Url, Zone, Port

 

当然我也可以通过命令来改变网站集的一些特定属性,首先让我们来学习如何利用Set-SPSite命令向网站集中添加网站集的第二管理员。

 

PS > Get-SPSite -Identity http://SPServer | Set-SPSite -SecondaryOwnerAlias domain/user

 

如果我们再一次使用Select-Object命令就可以来显是SecondaryContact这个属性信息。让我们领用这个命令来查看一下刚刚添加的第二管理员的名字。

 

PS > Get-SPSite -Identity http://localhost  | Select-Objec SecondaryContact

 

 

 

你可以将 SPSite 作为一个对象保存在一个变量中,例如:

 

PS > $spSite = Get-SPSite -Identity 

 

这样我们就可以向这个变量中添加它的第二管理员了,我们也可以通Microsoft.SharePoint.SPUser 来返回一个网站中已有的用户来做为网站集的第二管理员,我们可以使用一下的命令:

 

PS > $spSite = Get-SPSite -Identity http://SPServer 

PS > $spSite.SecondaryContact = (Get-SPUser -Web http://SPServer -Identity domain/user)

 

如果我们需要添加一个在AD中的用户,但并不在网站集中的用户,成为网站集的第二管理员。我们需要先通过New-SPUser命令添加一个用户到网站集中,在利用命令将其添加为网站第二管理员。

 

PS > $spUser = New-SPUser -Web http://SPServer -UserAlias domain/newuser 

PS > $spSite.SecondaryContact = $spUser

 

当我们在PowerShell中初始化了一个对象的时候,就一定要使用Dispose()方法来释放这个内存空间。

 

PS > $spSite.Dispose()

 

为什么我们要在使用Dispose()命令呢?因为,类似SPWebSPSiteSPSiteAdministration对象使用时能占用大量的内存资源,所以我们利用PowerShell命令可以有效的降低内存的占用。在通常情况下,我们通过使用命令Get-SPSite来初始化一个对象,在调用结束以后会自动的释放资源。但这是这样不会将对象保存在一个变量中。在初始化一个对象时,我们可以使用Dispose()方法来释放内存,也可以使用Start-SPAssignment和 Stop- SPAssignment 命令来创建和释放存储区域。我们可以在PowerShell中 使用 Get-Help Start-SPAssignment 或 Get-Help Stop-SPAssignment 命令来查看 它的描述信息和使用的方法。

转载于:https://www.cnblogs.com/joyang/p/4933965.html

你可能感兴趣的文章
mysql error 2005 - Unknown MySQL server host 'localhost'(0)
查看>>
四则运算的代码的改进(三)
查看>>
价格表
查看>>
thinkphp 内置标签volist 控制换行
查看>>
spring-boot-starter家族成员简介
查看>>
Oracle所有者权限与调用者权限
查看>>
DOM总结
查看>>
使用存储过程和视图存储配置
查看>>
Excel-漏斗图分析(差异分析)
查看>>
数据分析告诉我们的四个经验教训
查看>>
ReportView动态加载带参数的RDCL文件及子报表
查看>>
inside tomcat 6, 环境搭建
查看>>
INF6027 Introduction to Data Science Analysis of the UK Police Dataset
查看>>
设计模式(创建型模式-单例模式)
查看>>
超市收银系统_定义商品的父类和各个子类的实现——1
查看>>
luogu P1003 铺地毯
查看>>
LAMP环境搭建(Ubuntu)
查看>>
Java学习笔记(15)
查看>>
New year comes again
查看>>
编写符合ANSI和Unicode的应用程序
查看>>