SharePoint2010中PowerShell脚本应用总结

作者:小菜 更新时间:2025-03-16 点击数:
简介:把项目中用到PowerShell脚本整理一下,分享给需要的朋友。

首先通过Powershell创建WebApplication,创建时要判断是否存在,如果存在就删

【菜科解读】

把项目中用到PowerShell脚本整理一下,分享给需要的朋友。

首先通过Powershell创建WebApplication,创建时要判断是否存在,如果存在就删除,在这个操作中有异常,如果WebApplication不存在,会出现错误,不知如何避免,用Try 也不起作用,如果谁有好的解决办法可以回复。

一、创建 WebApplication、Sites、Web、及激活Features

# check to ensure Microsoft.SharePoint.PowerShell is loaded$snapin = Get-PSSnapin | Where-Object {$_.Name -eq 'Microsoft.SharePoint.Powershell'}if ($snapin -eq $null) { Write-Host "Loading SharePoint Powershell Snapin" Add-PSSnapin "Microsoft.SharePoint.Powershell"$WebAppPoolAccount = "T\Administrator"$WebAppName = "SharePoint - XXX.com80"$WebAppPort = 80$WebAppPool = "SharePoint - XXX.com80"$WebAppDBName = "WSS_Content_XXX"$WebAppUrl = "http://XXX.com"$WebAppUrl_XXX = "http://XXX.com/XXX"$WebAppHostHeader = "XXX.com"$SiteTemplate_WorkGroup = "STS#0" #STS#0 是工作组网站$SiteTemplate_DocCenter = "BDR#0" #STS#0 是文档中心################################################ WebApplication ##################################################Delete any existing Webapplication by name$targetUrl = Get-SPWebApplication $WebAppUrlif($targetUrl -ne $null){ Write-host "Deleting existing webapplication:" $WebAppName Remove-SPWebApplication $WebAppName -confirm -DeleteIISSite -removeContentDatabase Write-host "Deleted Site and ContentDatabase successful." -foregroundcolor redWrite-Host "Starting create WebApplication"Write-Host "Please waiting......" -foregroundcolor green$WebApp = New-SPWebApplication -Name $WebAppName -Port $WebAppPort -HostHeader $WebAppHostHeader -URL $WebAppUrl -ApplicationPool $WebAppPool -DatabaseName $WebAppDBName -ApplicationPoolAccount (get-SPManagedAccount $WebAppPoolAccount)Write-Host "WebApplication Created successfully"#display WebApplication InfoWrite-HostWrite-Host "------------------------------" -foregroundcolor GreenWrite-Host "Name:" $WebApp.Name -foregroundcolor greenWrite-Host "URL:" $WebApp.Url -foregroundcolor greenWrite-Host "------------------------------" -foregroundcolor Green########### 自定义方法 Add Web #############Function Add_Web($webUrl,$webName,$template){ Write-Host "Creating new web " $webUrl " please waiting......" New-SPWeb -Url $webUrl -Template $template -Name $webName Write-Host "Created " $webUrl " sucessful!" -foregroundcolor green########### Site #####################if($WebApp -ne $null){ Write-host $WebApp.Url -foregroundcolor green $SiteUrl = $WebApp.Url $SiteTitle = "XXX" # 创建网站集 Write-Host "Creating new site " $SiteTitle " ,please waiting......" $NewSite = New-SPSite -Url $SiteUrl -OwnerAlias $WebAppPoolAccount -Template $SiteTemplate_WorkGroup -Name $SiteTitle Write-host "Finish Createed successful" -foregroundcolor green # 激活网站集功能 Write-host "Starting active PublishingSite feature" Enable-SPFeature –Identity PublishingSite –url $WebAppUrl Write-host "PublishingSite Actived" -foregroundcolor green #创建子站点 Add_Web $WebAppUrl_XXX "XXX" $SiteTemplate_WorkGroup $NewSite.Dispose() else{ Write-host "WebApplication " $WebApp.Name " is not existing"}

二、Site创建后,要创建用户组、分配权限、初始化人员信息

################################################### SPGROUP# 获取网站集$Web = Get-SPWeb $WebAppUrl$GroupCount = $Web.SiteGroups.Count # 获取站点用户组的个数#删除目前已有的用户组While($GroupCount -ne 0){ $Web.SiteGroups.Remove($Web.SiteGroups[$GroupCount-1]) $GroupCount--$Web.Update();################################ 自定义方法 # 给用户组分配相应的权限function AddRoleAssignment($group,$role){ $RoleAssignment = New-Object Microsoft.SharePoint.SPRoleAssignment($group); $RoleAssignment.RoleDefinitionBindings.Add($role) $Web.RoleAssignments.Add($RoleAssignment)$Domain = "T\"#添加用户function AddUser($group,$userName){ $User = $web.Site.RootWeb.EnsureUser($Domain + $userName) $group.AddUser($User)# 给相应的组添加成员function AddUser_DeptLeader($group){ foreach($user in $group.Users){ $group.RemoveUser($user); AddUser $group "zhangjiangfeng"# 获取相应的角色$RoleName_Discuss = "参与讨论"$RoleDiscuss = $Web.RoleDefinitions[$RoleName_Discuss]$RoleName_Contribution = "完全控制"$RoleContribution = $Web.RoleDefinitions[$RoleName_Contribution]#用户组名$DeptLeader = "XXX"################################################################# # 添加组及人员$Group = $Web.SiteGroups[$DeptLeader]if($Group -eq $null){ # 判断组是否存在 $Web.SiteGroups.Add($DeptLeader,$Web.CurrentUser, $Web.CurrentUser,""); #添加组 $Group = $Web.SiteGroups[$DeptLeader] #获取组 AddUser_DeptLeader $Group #添加人员 AddRoleAssignment $Group $RoleDiscuss #分配权限else{ AddUser_DeptLeader $Group$Web.Update();foreach($Group in $Web.SiteGroups){ write-host $Group.Name$Web.Dispose()Write-Host "Finished" -foregroundcolor green

三、添加QuickLaunch 及分配权限

##################### 添加导航$Web = Get-SPWeb $WebAppUrl_XXX$NodeList_XXX = $Web.Navigation.QuickLaunch # 获取快速启动栏$NodeList_XXXCount = $NodeList_XXX.Count #获取菜单个数Foreach($node in $NodeList_XXX){ # 遍历输出所有菜单 write-host $node.TitleWhile($NodeList_XXXCount -ne 0){ # 删除已有菜单 $NodeList_XXX[$NodeList_XXXCount - 1].Delete() $NodeList_XXXCount --##########我的菜单$NewNode = New-Object Microsoft.SharePoint.Navigation.SPNavigationNode("我的菜单", "",$true)$NodeList_XXX.AddAsLast($NewNode)$NewChild = New-Object Microsoft.SharePoint.Navigation.SPNavigationNode("我的子菜单", "/SitePages/XXX.aspx",$true)$NewNode.Children.AddAsLast($NewChild)$NewChild.Properties["Audience"] = ";;;;用户组名" #给菜单分配相应的访问权限$NewChild.Update()

四、创建文档库及文件夹

#################################### 添加文档库及文件夹# SPListTemplateType$DocTemp = [Microsoft.SharePoint.SPListTemplateType]::DocumentLibrary$Folder = [Microsoft.SharePoint.SPFileSystemObjectType]::Folder# Delete ListFunction DeleteList($web,$listName){ $list = $web.Lists.TryGetList($listName) if($list -ne $null){ Write-Host "............." $listName "already exists,deleting................" -foregroundcolor red $list.Delete() Write-host "............." $listName "already is deleted....................." -foregroundcolor Green Write-host "" }}# Add ListFunction AddList($web,$listName,$listDescription,$listTemplate){ DeleteList $web $listName Write-host ".............Starting create " $listName ",please waiting............." $web.Lists.Add($listName,$listDescription,$listTemplate) Write-host ".............. " $listName " already is created......................." -foregroundcolor green}# List OnQuickLaunchFunction OnQuickLaunchList($list,$bool){ $list.OnQuickLaunch = $bool $list.Update()}# Add ItemFunction AddItemFolder($web,$url,$listName,$name){ Write-host ".............Starting create " $name " Folder,please waiting............." -foregroundcolor blue $list = $web.Lists.TryGetList($listName) if($list -ne $null){ $folder = $list.AddItem($url,$Folder,$name) $folder.Update() Write-host ".............. " $name " Folder already is created......................." -foregroundcolor green }}##$Web = Get-SPWeb $WebAppUrl_XXX################# 添加文档库AddList $Web "我是文档库" "我是文档库" $DocTempAddItemFolder $Web "我是文件夹" "我是文件夹"$Web.Dispose()

五、文档库断开继承并分配权限

############################################################ 分配权限$RoleName_Discuss = "参与讨论"$RoleName_Contribution = "完全控制"$RoleName_Read = "读取"# 断开继承Function BreakRoleInheritance($web,$listName){ $list = $web.Lists.TryGetList($listName) if($list -ne $null){ Write-Host "............." $listName "BreakRoleInheritance ................" $list.BreakRoleInheritance($false,$false) Write-host "............." $listName "BreakRoleInheritance sucessed....................." -foregroundcolor Green return $list# 分配权限Function AssignPermission($web,$list,$groupName,$roleDefinition){ $group = $web.SiteGroups[$groupName]; if($group -ne $null){ write-host "............." $list.Title "Add RoleAssignment" $groupName $roleAssignment = New-Object Microsoft.SharePoint.SPRoleAssignment($group); $permLevel = $web.RoleDefinitions[$roleDefinition]; $roleAssignment.RoleDefinitionBindings.Add($permLevel); $list.RoleAssignments.Add($roleAssignment);$Web = Get-SPWeb $WebAppUrl_XXX$List = BreakRoleInheritance $Web "我是文档库"if($List -ne $null){ AssignPermission $Web $List "XXX" $RoleName_Read$Web.Update();$Web.Dispose();

六、只要单击Cnblogs.bat 一个基本的网站就创建完成了。

单击下载

SharePoint2010,中,PowerShell,脚本

win10关闭安全中心详细步骤

我们在使用电脑的时候,有的朋友需要将win10系统安全中心关闭,根据小编的调查并不是所有的朋友都知道win10怎么关闭安全中心,针对win10系统关闭安全中心的问题,我给大家整理总结了win10关闭安全中心详细步骤。

具体的win10关闭安全中心详细步骤如下:1、按WIN+R组合键打开运行,然后输入services.msc确定;2、在服务列表中找到SecurityCenter服务,双击打开;3、在弹出的属性界面,点击【停止】停止该服务,然后将启动类型设置为“禁用”即可;以上就是小编带来的win10关闭安全中心详细步骤的全部内容,希望可以提供帮助。

win10关闭安全中心,win10怎么关闭安全中心,win10关闭安全中心详细步骤

Win10音效优化大解析!提升音质,让你的耳朵沉醉在绝美音乐中

想重装系统不会怎么办?菜科网一键重装系统轻松在线帮您搞定系统重装问题。

软件支持 在线重装、U盘制作、自定义重装 等多种模式。

简介:你是否曾经遇到过听音乐时音质不佳的情况?Win10音效优化大揭秘!本文将为你揭示一些提升音质的小技巧,让你的耳朵沉浸在绝美音乐中。

通过实例和论点,我们将帮助你理解音效优化的重要性。

工具原料:在本文中,我们将使用以下工具和设备:电脑品牌型号:Dell XPS 15操作系统版本:Windows 10软件版本:Realtek HD Audio Manager正文:一、优化音频设置1、调整均衡器:打开Realtek HD Audio Manager,调整均衡器以增强低音和高音,使音乐更加丰富。

2、启用音效增强:通过启用音效增强功能,你可以提升音乐的清晰度和音质。

二、使用高质量音频播放器1、安装Foobar2000:这是一款功能强大的音频播放器,支持多种音频格式,并提供了丰富的音效插件。

2、调整音频设置:在Foobar2000中,你可以调整音频输出设置,选择合适的音频设备,并启用音效增强插件。

三、优化音频文件1、使用高质量音频格式:选择无损音频格式,如FLAC或WAV,以保留音乐的原始质量。

2、使用音频编辑软件:通过音频编辑软件,你可以去除噪音、调整音量和均衡器,使音乐更加清晰。

四、选择高品质音频设备1、选择高保真耳机:选择一款高保真耳机,可以提供更好的音质和音频细节。

2、使用外部音频接口:通过使用外部音频接口,如USB DAC,可以提供更好的音频转换和放大功能。

总结:通过优化音频设置、使用高质量音频播放器、优化音频文件和选择高品质音频设备,你可以提升音质,让你的耳朵沉浸在绝美音乐中。

尝试这些方法,享受高品质音乐的乐趣吧! 标签: 注意:本站所刊载的文章均为学习交流之用,请勿用于商业用途。

对于商业使用,请联系各自版权所有者,否则法律问题自行承担。

Win7系统升级指南:全面解析升级步骤与要点 Win7系统损坏修复教程:详细步骤助你快速解决问题 Win10音效优化大揭秘!提升音质,让你的耳朵沉浸在绝美音乐中 分类于: 回答于:2023-10-26 简介:你是否曾经遇到过听音乐时音质不佳的情况?Win10音效优化大揭秘!本文将为你揭示一些提升音质的小技巧,让你的耳朵沉浸在绝美音乐中。

通过实例和论点,我们将帮助你理解音效优化的重要性。

工具原料:在本文中,我们将使用以下工具和设备:电脑品牌型号:Dell XPS 15操作系统版本:Windows 10软件版本:Realtek HD Audio Manager正文:一、优化音频设置1、调整均衡器:打开Realtek HD Audio Manager,调整均衡器以增强低音和高音,使音乐更加丰富。

2、启用音效增强:通过启用音效增强功能,你可以提升音乐的清晰度和音质。

二、使用高质量音频播放器1、安装Foobar2000:这是一款功能强大的音频播放器,支持多种音频格式,并提供了丰富的音效插件。

2、调整音频设置:在Foobar2000中,你可以调整音频输出设置,选择合适的音频设备,并启用音效增强插件。

三、优化音频文件1、使用高质量音频格式:选择无损音频格式,如FLAC或WAV,以保留音乐的原始质量。

2、使用音频编辑软件:通过音频编辑软件,你可以去除噪音、调整音量和均衡器,使音乐更加清晰。

四、选择高品质音频设备1、选择高保真耳机:选择一款高保真耳机,可以提供更好的音质和音频细节。

2、使用外部音频接口:通过使用外部音频接口,如USB DAC,可以提供更好的音频转换和放大功能。

总结:通过优化音频设置、使用高质量音频播放器、优化音频文件和选择高品质音频设备,你可以提升音质,让你的耳朵沉浸在绝美音乐中。

尝试这些方法,享受高品质音乐的乐趣吧! 菜科网系统致力于解决 Windows 系统重装解决方案,提供高效、安全、免费的系统重装服务。

加入收藏
               

SharePoint2010中PowerShell脚本应用总结

点击下载文档

格式为doc格式

  • 账号登录
社交账号登录