如何在windows计划中调用备份sharepoint2010网站集的powershell脚本
最近有个项目需要在在windows计划中使用powershell脚本备份sharepoint2010网站集,打开sharepoint的powershell执行命令管理界面的属性
查看:
C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe -NoExit " & ' C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\CONFIG\POWERSHELL\Registration\\sharepoint.ps1 ' "
先看看PowerShell.exe 的帮助
了解如上信息。我们来编写用powershell备份网站集的脚本。代码如下:
- #//*************************************************************
- #//编辑人:XXX
- #//编辑单位:XXX
- #//编辑作用:备份所有站点,按照周1到周日创建7个文件夹
- #//编制时间:2013.08.26
- #//*************************************************************
- #**************************************************默认C#盘下,需要改动如下参数
- $Location = "d:\"
- #网站集URL
- $siteUrl=http://XX.XXX.com
- #**************************************************
- #根目录名称
- $RootName="EPBackUp"
- #子文件夹
- $folderName = (Get-Date).DayOfWeek
- #全路径
- $folderPath = $Location + "\" + $RootName
- #如果根文件夹不存在。则创建根文件夹
- If((Test-Path $Location) -eq $False) {
- Write-Host "开始创建根文件夹...---------------"
- New-Item -path $Location -name $RootName -itemType "directory"
- Write-Host "创建根文件夹完毕...---------------"
- }
- #如果星期文件夹不存在,则创建星期文件夹
- $weekPath =$folderPath + "\" + $folderName
- If((Test-Path $weekPath) -eq $False) {
- Write-Host "正在创建周期文件夹......."
- New-Item -path $folderPath -name $folderName -itemType "directory"
- Write-Host "创建周期文件夹完毕...---------------"
- }
- #******************************************************************
- #添加如下2行代码为windows计划执行使用,否则windows计划无法执行ps1
- $MySnapin="Microsoft.SharePoint.PowerShell"
- if ( (Get-PSSnapin -Name $MySnapin -ErrorAction SilentlyContinue) -eq $null )
- {
- Write-Host "正在导入sharepoint的commandlet...---------------"
- Add-PSSnapin $MySnapin
- Set-ExecutionPolicy -ExecutionPolicy "Unrestricted" -Force
- Write-Host "导入的sharepoint的commandlet完毕...---------------"
- }
- #******************************************************************
- #整个文件夹全路径
- $BackupFilePath = $folderPath + "\" + $folderName
- #公司门户文件夹
- $epName = $BackupFilePath + "\SPSite_EP.bak"
- Write-Host "开始备份公司门户...---------------"
- backup-SPSite $siteUrl -Path $epName -force
- Write-Host "备份公司门户完毕...---------------"
- #学习与发展门户文件夹
- $KMSiteUrl = $siteUrl +"/km"
- $KMName = $BackupFilePath + "\SPSite_KM.bak"
- Write-Host "开始备份学习与发展...---------------"
- backup-SPSite $KMSiteUrl -Path $KMName -force
- Write-Host "备份学习与发展完毕...---------------"
- #协作空间文件夹
- $WorkSiteUrl = $siteUrl +"/workspace"
- $WorkName = $BackupFilePath + "\SPSite_WorkSpace.bak"
- Write-Host "开始备份协作空间...---------------"
- backup-SPSite $WorkSiteUrl -Path $WorkName -force
- Write-Host "备份协作空间完毕...---------------"
说明:
Add-PSSnapin, alias 为 asnp
这个没有什么难理解的地方。Java里面有import来导入类库,同样C++里面有using
来导入库。在powershell
里面有add-pssnapin来导入内置之外的commandlets。比如你自己写了一个commandlet用来计算及验证MD5摘要,怎么在console下用你自己写的commandlet呢(现在还没有内置的算MD5的commandlet,只能用.NET里面的库)?让add-pssnapin来帮助你。
语法
Add-PSSnapin [-name] <string[]> [-passThru]
[<CommonParameters>]
例子1
add-PSSnapIn
Microsoft.Exchange,Microsoft.Windows.AD
将Microsoft.Exchange
和Microsoft.Windows.AD
snappin添加到当前console中去。
这两个snappin中的所有类,函数只在当前console中有效。如果想要当前console的snapin在后面可用,请看后面的export-console说明.
例子2
get-pssnapin
-registered | add-pssnapin -passthru
将所有注册过的snapin加入到当前会话中去。
创建windows计划
注意点:
#******************************************************************
#添加如下2行代码为windows计划执行使用,否则windows计划无法执行ps1
Add-PSSnapin "Microsoft.SharePoint.PowerShell"
Set-ExecutionPolicy -ExecutionPolicy "Unrestricted" -Force
#******************************************************************
创建基本任务
1)、程序脚本:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
2)、添加参数:-NonInteractive "c:\BackUp.ps1"
我们测试下效果图:
如何在windows计划中调用备份sharepoint2010网站集的powershell脚本的更多相关文章
- 如何在C语言中调用Swift函数
在Apple官方的<Using Swift with Cocoa and Objectgive-C>一书中详细地介绍了如何在Objective-C中使用Swift的类以及如何在Swift中 ...
- 【转载】如何在C语言中调用shell命令
转载自:http://blog.csdn.net/chdhust/article/details/7951576 如何在C语言中调用shell命令 在linux操作系统中,很多shell命令使用起来非 ...
- 如何在 Windows 10 中搭建 Node.js 环境?
[编者按]本文作者为 Szabolcs Kurdi,主要通过生动的实例介绍如何在 Windows 10 中搭建 Node.js 环境.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 在本文中 ...
- 如何在Windows服务程序中添加U盘插拔的消息
研究了下这个问题,主要要在一般的windows服务程序中修改两个地方: 一.调用RegisterServiceCtrlHandlerEx VOID WINAPI SvcMain( DWORD dwAr ...
- 如何在windows环境中搭建apache+subversion(ZT)
我一直有一个想法就是在本机上象scm一样的搭建一个subversion服务器,然后每天写完代码的时候提交一下,这种感觉好好哦,之前我在windows环境中搭建过纯subversion的服务器兴奋过一阵 ...
- 重装助手教你如何在Windows 10中更改您的帐户名称
当您设置新的Win10免费下载 PC时,您选择用户名的部分可能会让您措手不及.如果是这种情况,您可以选择弹出头部的第一件事或者您打算稍后更改的随机和临时事物.但令人惊讶的是,在Windows 10中更 ...
- 解析如何在C语言中调用shell命令的实现方法【转】
本文转自:http://www.jb51.net/article/37404.htm 1.system(执行shell 命令)相关函数 fork,execve,waitpid,popen表头文件 #i ...
- [转]如何在Windows 10中更改文件夹背景颜色
ini文件.我们甚至可以使用相同的技术将图片设置为文件夹背景. 已有工具可以更改Windows 7中Windows资源管理器背景的颜色,并将图像设置为Windows 7中的文件夹背景,但这些工具与Wi ...
- []如何在Windows 10中更改文件夹背景颜色
ini文件.我们甚至可以使用相同的技术将图片设置为文件夹背景. 已有工具可以更改Windows 7中Windows资源管理器背景的颜色,并将图像设置为Windows 7中的文件夹背景,但这些工具与Wi ...
随机推荐
- CLR执行模型
好好学习底层运行机制,从CLR via C# 开始. CLR的执行模型: CLR:Common Language Runtime,是一个可由多种编程语言使用的"运行时".CLR的核 ...
- 用Log Parser Studio分析IIS日志
发现一个强大的图形化IIS日志分析工具——Log Parser Studio,下面分享一个实际操作案例. 1. 安装Log Parser Studio a) 需要先安装Log Parser,下载地址: ...
- 聚合索引(clustered index) / 非聚合索引(nonclustered index)
以下我面试经常问的2道题..尤其针对觉得自己SQL SERVER 还不错的同志.. 呵呵 很难有人答得好.. 各位在我收集每个人擅长的东西时,大部分都把SQL SERVER 标为Expert,看看是否 ...
- GDB 和 windbg 命令对照(转载)
From:http://blog.csdn.net/joeleechj/article/details/10020501 命令 ...
- Windows Azure Virtual Machine (33) Azure虚拟机删除重建
<Windows Azure Platform 系列文章目录> 注意:本文介绍的重建Azure虚拟机,必须在同一个订阅内删除重建,必须在同一个订阅内删除重建,必须在同一个订阅内删除重建. ...
- laravel吐槽系列之一
最近项目中经常使用到了laravel框架,对于这个框架之前只是弱弱地接触了一点,没有深入接触,这下有时间好好研究它了(主要是不得不研究了).说实话,laravel让我打开眼界了,之前对框架的使用一直停 ...
- HT for Web基础动画介绍
在上一篇<基于HT for Web矢量实现3D叶轮旋转>一文中,我略微提了下HT for Web基础动画的相关用法,但是讲得不深入,今天就来和大家分享下HT for Web基础动画的相关介 ...
- 实现UniqueAttribute唯一性约束
using System; using System.ComponentModel.DataAnnotations; using System.Data.Entity; namespace Zwj.T ...
- HBase单个RegionServer的region数目上限
前言 RegionServer维护Master分配给它的region,处理对这些region的IO请求,负责切分在运行过程中变得过大的region, 由于集群性能( 分配的内存和磁盘是有限的 )有限的 ...
- Chrome开发者工具详解(2)-Network面板
Chrome开发者工具详解(2)-Network面板 注: 这一篇主要讲解面板Network,参考了Google的相关文档,主要用于公司内部技术分享. Chrome开发者工具面板 面板上包含了Elem ...