Exchange 2013 PowerShell设定脚本计划任务

在我们日常管理中,最常见的就是管理员通过计划任务定时启动一个脚本,在这一小节中,我们来看看如何通过Windows计划任务设定一些基本任务

如何开启一个Windows计划任务呢,下面看看具体的步骤:

1、  通过如下步骤打开Windows计划任务(windows Server 2012 R2),服务器管理器à工具à任务计划程序

任务计划面板

2、  点击操作栏中的“创建基本任务”

3、  在名称框中输入计划任务的可辨别名称,点击“下一步”

4、  设定任务触发器频率,下一步

5、设定每天的频率,可以一天运行多次,点击“下一步”

6、在这里选择启动程序,下一步

7、  在程序和脚本浏览到我们的批处理文件,点击“下一步”

批处理文件如下:

PS1文件信息如下:

8、  点击完成,完成基本任务的创建

9、  看看计划任务中的计划程序,我们先来手动运行看看结果

10、  手动运行下脚本,右键à运行

11、  查看结果信息,可以看到计划任务已经做了相应的操作

上面的示例是通过批处理调用PowerShell,然后在PowerShell中调用Exchange命令进行运行的,下面直接通过运行PowerShell脚本测试看看效果:

下面新建一个任务计划

其它步骤基本相同,然后到了这一步,程序和脚本中输入如下命令:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command ". ‘C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1‘; Connect-ExchangeServer -auto; c:\Script\Report02.ps1"

点击下一步会弹出如下提示框,点击“是”

点击“完成”完成基本计划任务的创建

完成基本任务的创建后,我们手动运行下任务可以收到电子邮件了:

这些脚本是如何工作的呢?

在本例中,试用的语句比较多,看起来有点奇怪。我们实际要做的就是调度PowerShell.exe然后使用-Command参数去执行多个语句。这里我们应该注意到,脚本有多行以及每个语句使用分号隔开。

我们做的第一件事就是定位到Exchange服务器bin目录下的RemoteExchange.ps1文件,这个文件初始化一些Exchange Shel变量和导入Exchange特殊功能。

下一行的脚本使用使用Connect-ExchangeServer调用参数-Auto连接Exchange服务器,允许从本地AD站点中最好的Exchange服务器加载Exchange Management Shell环境。

最好,通过Exchange Management Shell执行我们的指定的脚本文件。

当使用这种方法时,确保计划任务运行账户拥有Exchange组织管理访问的权限。同样,当服务器启用了用户账户控制(UAC)时,你可能需要在计划任务选项中,启用最高权限运行计划任务,同时,我们也希望启用不管用户是否登陆都要运行,如下图:

更多计划任务示例:

在前面的示例中,我们都是在安装有Exchange管理工具的服务器上运行的。那么如何在一台工作组或者没有安装管理工具的服务器上远程运行脚本呢?答案是可以的,我们只需要在一台有PowerShell v2及更高版本的计算机上就可以运行。

基本语法如下:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command "$s= New-PSSession –ConfigurationName Microsoft.Exchange -ConnectionUri http://mbx01.corp.robin.com/PowerShell/; Import-PSSession $s ; c:\Script\Report02.ps1"

上面的命令只需要我们在创建计划任务的时候,在程序和脚本框中填入以上脚本即可!

时间: 2024-10-13 12:59:26

Exchange 2013 PowerShell设定脚本计划任务的相关文章

Exchange 2013 PowerShell新建&修改&删除邮箱

在我们日常使用Exchange Management Shell最多的应该就是邮箱的管理了.在这一节中,将主要介绍下在Exchange中使用语法命令在组织中创建.更新和删除邮箱. 先来看一个示例: 1.  我们可以使用Exchange Management Shell创建一个启用了邮箱功能的AD账户.语法如下: $password = ConvertTo-SecureString -AsPlainText abc.123 -Force New-Mailbox -UserPrincipalName

Exchange 2013 PowerShell管理联系人&通讯组&资源邮箱

管理联系人 创建联系人,使用如下语法: New-MailContact -Alias rjones ` -Name "Rob Jones" ` -ExternalEmailAddress [email protected] ` -OrganizationalUnit sales 已启用邮箱的用户可以使用如下语法: New-MailUser -Name 'John Davis' ` -Alias jdavis ` -UserPrincipalName [email protected]

Exchange 2013 PowerShell创建自定义脚本

我们可以通过执行单条命令或者结合管道运行多条命令来完成很多任务,但是有时你想创建一个脚本,执行一系列的操作或者加载一个函数库或者预定义变量或别名在Shell中,这一节,我们将学习创建脚本以及运行脚本 怎么做呢? 1.  让我们创建一个基本的脚本,来自动执行一个多步骤的过程.启用文本编辑器,输入如下代码: param( $name, $maxsendsize, $maxreceivesize, $city, $state, $title, $department ) Set-Mailbox -Id

Exchange 2013 PowerShell手动配置远程PowerShell连接

介绍 在Exchange 2007的时候,微软就推出了一套全新的基于Shell的管理工具:PowerShell V1,而且所有的图形化界面也是建立在这种技术之上的. 到了Exchange 2010,PowerShell更紧密的集成在产品中,Exchange 2010使用的是PowerShell V2,很大程度上依赖于其新的远程架构.即使你的服务器在本地或云端,都可以方便的使用这套管理工具. 在Exchange 2013中,使用的是PowerShell V3,有了更多的命令以及核心功能改变.在20

Exchange 2013 PowerShell 传输文件及并行管道

自从Exchange 2013管理Shell命令是通过远程PowerShell会话执行,导入和导出文件需要一个新的特定参数.大概有上百个Shell命令需要用到,那么这一小节,我们就看看如何使用这些参数通过远程Shell连接进行传输文件的. 传输文件工作方式: 假如你正在当前活动目录站点中创建一个边缘订阅中心到传输服务器.当你在边缘服务器上生成了xml文件后,你可以通过New-EdgeSubscription命令,具体语法如下: [byte[]]$data = Get-Content -Path

Exchange 2013 PowerShell数组和哈希表

示例: 你可以使用一个变量来存放一个数组,通过这个数组对变量分配多个值,在值之间,值需要用分隔号隔开,下面来创建一个示例: $servers = "EX1","EX2","EX3" 创建一个空的哈希表,可以使用如下语法: $hashtable = @{} 创建完哈希表后,我们可以对它进行赋值: $hashtable["server1"] = 1 $hashtable["server2"] = 2 $hash

Exchange 2013 PowerShell关键概念之一

介绍 当你的组织决定升级到Exchange Server 2013,去体验一些新的功能,如集成的电子邮件存档.发现功能以及高可用功能.不管你是否喜欢,你应该意识到PowerShell已经是Exchange服务器管理工具的一部分,而且你需要去学习一些基本脚本知识,从而建立一些脚本管理Exchange Server.这本书就是关于这方面的介绍.在这一章,将介绍一些PowerShell的一些核心概念,这些概念讲方便你学习这本书中提到的一些实例知识.当然,假如你的PowerShell比较熟悉,可以跳过本

Exchange 2013 PowerShell管理域或整个林的收件人范围

Exchange管理工具可以配置为使用特定的部分活动目录层次结构使用特定的收件人范围.当你设置收件人范围为活动目录中的一个位置,例如一个域或者一个组织单元,Exchange Management Shell仅仅允许你查看指定范围内的收件人信息.在这一节,我们来看看使用Exchange Management Shell如何设定收件人范围. 如何做到这一点呢? 可以在Exchange Management Shell中使用Set-AdServerSettings命令来设置一个收件人范围.例如,设置当

Exchange 2013 PowerShell创建自定义对象

PowerShell是一个基于对象的Shell,在写一行程序,脚本和函数时,給了我们很大的灵活性.当生成详细的报告时,我们需要从代码中自定义我们的数据输出,或者可以通过管道输送到其它的命令.我们还需要能够控制和定制代码的输出,这样我们可以合并来自多个源的数据到一个单独的对象.在这一节中,我们将学习下基本的构建定制的对象 首先我们要做的时创建一个邮箱对象的集合,将用来作为一组新的自定义对象的数据源: $mailboxes = Get-Mailbox 可以添加自定义的属性用于后续整个管道的对象属性,