WindowsPowerShell脚本编程.ppt_第1页
WindowsPowerShell脚本编程.ppt_第2页
WindowsPowerShell脚本编程.ppt_第3页
WindowsPowerShell脚本编程.ppt_第4页
WindowsPowerShell脚本编程.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2019年7月28日,第10章 Windows PowerShell 脚本编程,10.1 PowerShell概述 10.1.1 PowerShell简介 10.1.2 PowerShell的运行环境 10.2 PowerShell 的安装及配置 10.2.1 在Windows Server 2008中安装PowerShell 10.2.2 使用VBScript验证安装 10.2.3 配置PowerShell 10.2.4 PowerShell的使用运行 10.3 获取Windows Powershell帮助 10.4 Powershell cmdlet命令,第10章 Windows PowerShell 脚本编程,10.4.1 cmdlet介绍 10.4.2 cmdlet中的一些常用命令 10.5 PowerShell脚本语言语法 10.5.1 使用变量和常量 10.5.2 使用For语句 10.5.3 使用判断语句 10.5.4 使用数据类型 10.6 使用PowerShell管理Windows 10.6.1查看网络设置 10.6.2 配置DNS服务器设置 10.6.3 添加用户到域组,【本章提要】,Windows PowerShell的概述 PowerShell 的安装及配置 如何使用PowerShell管理Windows,基本内容,可以初步地将Windows PowerShell理解为微软早期版本操作系统中的CMD.exe命令工具集,但与此相比,Windows PowerShell的功能更加强大,使用方式更加灵活。Windows PowerShell作为Windows Server 2008提供的重大改进之一,已成为Windows Server 2008的一个组件。本章将讨论PowerShell的基本概念、特点及语法,并介绍如何利用PowerShell对Windows进行基本管理。,10.1 PowerShell概述,10.1.1 PowerShell简介 Windows PowerShell包括一个全新的基于任务的命令行外壳,以及特别设计的用于系统管理的脚本语言。它构建于.NET Framework的基础之上,因此Windows PowerShell也可以运行在支持.NET Framework的操作系统平台上 。 Windows PowerShell内置的命令为cmdlets ,用户可以使用cmdlets命令以命令行的方式来管理计算机,而且Windows PowerShell还具有完整的用户开发的脚本语言和丰富的表达式解析程序。,10.1.2 PowerShell的运行环境,目前可以安装Windows Powershell程序包的系统如下: 1.安装有SP2补丁程序包的Windows XP。 2.安装有SP1补丁程序包的Windows Server 2003 3.Windows Vista及Windows Server 2008。 另外由于Windows Powershell构建于Microsfot.NET框架之上,因此安装该工具包需要Microsfot.NET Framework2.0及以上版本的环境。,10.2 PowerShell 的安装及配置,10.2.1 在Windows Server 2008中安装PowerShell 1.选择“开始”|“所有程序”|“管理工具”|“服务器管理器”菜单命令 2.选择“功能”选项,右侧选择“添加功能”,便会弹出 “添加功能向导”窗口。 3.在“添加功能向导”窗口中间的列表框中,选择“Windows Powershell”,然后单击“下一步”按钮。安装向导就会自动安装,并将安装完成的结果反馈给用户。,10.2.2 使用VBScript验证安装,因为Windows Powershell目前没有被默认安装在微软已发布的任何操作系统上,因此在使用前,需要确认目标平台是否已经安装了Windows Powershell。运行脚本步骤: 方法一:将脚本复制到C盘根目录下,点击“开始”菜单,选择“运行”,输入“cmd”回车,再输入命令“c:/ FindPowerShell.vbs”回车了; 方法二:直接双击该脚本文件运行。 如果系统安装了PowerShell,脚本会显示“PowerShell is present on your computer”的字样。,10.2.3 配置PowerShell,创建Windows Powershell配置文件 Windows Powershell的配置文件中可以保存很多设置,这些内容可以保存在psconsole文件中。如果要到处这些psconsole配置文件,可以使用Export-Console cmdlet命令。方法如下:首先启动安装好的Powershell,在命令窗口中输入如下命令并回车: PS C: Export-Console myconsole,10.2.3 配置PowerShell,配置Windows Powershell启动选项 Windows Powershellde 启动方式有很多,如果双击默认的Windows Powershell图标后启动的窗口可以满足需要,直接使用即可。另外,我们还可以使用不同的配置文件启动Windows Powershell,甚至可以在运行某个Windows Powershell命令后自动退出。如果需要启动特定版本的Windows Powershell,则可以在启动时为version参数提供不同的值 。,10.2.4 PowerShell的使用运行,安装及配置好Powershell之后,按照如下方法运行: 方法1:选择“开始”-“所有程序”-“Windows Powershell 1.0”-“Windows Powershell”菜单命令,即可打开,如图所示。 方法2:选择“开始”-“运行”菜单命令,在弹出的对话框中输入“Powershell”即可启动。 方法3:在命令提示符环境下,输入“Powershell”即可启动,10.3 获取Windows Powershell帮助,方法1:Windows Powershell安装后自带的帮助文档。在Windows Powershell安装完毕后,在开始菜单中就包含了帮助文档的快捷方式。 方法2:获取帮助的内置命令。 Help命令:显示命令列表或某一命令的帮助信息。 Get-help命令:显示有关Windows Powershell和概念的帮助。 方法3:微软官方网站中的Windows Powershell专题等网站 。,10.4 Powershell cmdlet命令,10.4.1 cmdlet介绍 Windows Powershell支持完全的命令行交互式(CLI)环境。在命令提示符下输入命令后,系统将处理该命令并将结果显示输出在外壳程序窗口中。 cmdlet是指由Windows Powershell团队创建的原生命令,这些命令类似可执行程序,但因为内建于Windows Powershell中,因此非常易于使用。 Windows Powershell自带120多个cmdlet,可以帮助网络管理员在不用学习Windows Powershell脚本语言的情况下充分享受到Windows Power shell带来的各种便利。,10.4.2 cmdlet中的一些常用命令,1、可用的cmd和UNIX命令 可以利用如下方法查看这些别名所对应的Windows Powershell的实际命令: Get-alias 例: PS C:UsersAdministratorget-alias cat,10.4.2 cmdlet中的一些常用命令(续),2、格式控制命令 Windows Powershell还提供了一组用于控制特定对象的显示属性的cmdlet命令。他们包括Format-Wide、Format-List、Format-Table和Format-Custom。 Format-Wide:将对象的格式设置为只能显示每个对象的一个属性的宽表。 Format-List:将输出的格式设置为属性列表,其中每个属性均各占一行显示。 Format-Table:将输出的格式设置为表。 Format-Custom:使用自定义视图来设置输出的格式 。,10.4.2 cmdlet中的一些常用命令(续),3、重定向数据类命令 默认情况下,Windows Powershell的大部分命令是将数据输出到屏幕显示。而重定向数据类的命令可将数据重新发送到另外的输出设备。这些命令主要包括Out-Host、Out-Null、Out-Printer和Out-File。 Out-Host:将输出发送到Windows Powershell主机进行显示。主机将在命令行显示输出。由于Out-Host是默认设置,因此除非想使用其参数来更改显示,否则不需要指定它。主要使用该命令实现数据分页。,10.4.2 cmdlet中的一些常用命令(续),Out-Null:删除输出,不将其发送到控制台。如果不需要获取运行命令输出的数据,则可以放弃这些数据,此时Out-Null命令就很有作用。 Out-Printer:将输出发送到默认打印机或备用打印机(如果制定了打印机)。通过制定打印机的显示名称,可以使用任何基于Windows的打印机。无需指定任何种类的打印机端口映射,设置无需指定实际的物理打印机。 Out-File:将输出发送到文件。如果需要使用它的参数,可以使用此命令而不是重定向运算符()。,10.4.2 cmdlet中的一些常用命令(续),4、导航定位命令 在Windows Powershell中提供了导航的命令。这些导航是指在驱动器之间更换位置的操作 。 在文件系统中导航 Set-Location:将当前位置更换为制定路径。其别名为cd。 Get-Childitem:获取某个位置中的子项。其别名为dir和ls。 Get-Item:获取位于制定位置的项的内容。 New-Item:在命名空间中创建新项(包括文件或文件夹或注册表项等)。此命令还可以设置新项的值。 Remove-Item:删除指定的项。可以删除一个或多个项(包括文件、目录、注册表项、别名、证书和函数)。 Copy-Item:将一个位置复制到命名空间的另一个位置。其中符号“.”表示当前目录;符号“*”表示目录内容;$home表示目录的内置变量;$pshome表示Windows Powershell安装目录的内置变量。,10.4.2 cmdlet中的一些常用命令(续),在注册表中导航 可以使用与文件系统驱动器中相同导航方法在Windows注册表中导航。在Windows Powershell中,注册表项“HKEY_LOCAL_MACHINE”映射到Windows Powershell HKLM:驱动器,而注册表项“HKEY_CURRENT_USER”映射到Windows Powershell HKCU:驱动器。 如下图,表示在注册表项中进行导航。,10.4.2 cmdlet中的一些常用命令(续),在证书存储区中导航 可以在计算机上的数字签名证书存储区中导航。证书存储区映射到Windows Powershell Cert:驱动器。 如图所示,表示在证书存储区中导航。,10.4.2 cmdlet中的一些常用命令(续),在其他驱动器中导航 除了上述3类驱动器外,Windows Powershell还提供了其他有用的驱动器,其中包括别名驱动器(Alias:)、环境提供程序驱动器(Env:)、函数驱动器(Funciton:)、和变量驱动器(Variable:)。使用相同的方法就可以在这些驱动器中导航。,10.5 PowerShell脚本语言语法,10.5.1 使用变量和常量 Windows Powershell中变量的默认规则是:在使用某一变量之前,没必要提前声明该变量,只需要在使用变量保存数据时声明即可。并且所有变量名称前都必须包含一个美元符号。 Windows Powershell中常量类似于变量,但又有两点区别:常量的值永远不会发生变化;常量无法被删除。常量可以使用Set-Variable cmdlet创建,指派-option参数即可创建常量。 例: $computername = “mycomputer” Set-Variable name intDriveType value 3 option constant 这里设置了变量computername和常量intDriveType。,10.5.2 使用For语句,For语句可以用于控制脚本块在符合要求的情况下执行。大部分时候,可以使用for语句执行需要重复多次的操作。For语句的结构例可以使用小括号将需要求值的表达式于包含在大括号中的代码分隔开。如下例: for ($a=1; $a le 3; $a+) “hello” for括号里的表达式主要分成三部分:第一部分是变量$a,并为其赋值“1”;第二部分则包含了计算条件,表示变量$a值不大于数字“3”,这样代码块部分包含的命令才会被运行;第三部分则表示给变量$a的值增加“1”。这行代码最后输出3个“hello”的字样。,7.5.3 使用判断语句,在脚本中对分支的控制进行判断是一项基本技术,事实上,这也是自动化操作的基础。这个过程中需要判断并评估每种情况,并决定需要进行的操作。 ifelse是最基本的判断语句,这个结构容易被理解,适合一般的会话。例如:可以考虑下列两个天气情况: if (sunny and warm) go to park elseif(cloudy and cool) go shopping else stay at home,7.5.3 使用判断语句(续),在其他编程语言中,switch也叫“选择情况”语句(select case),它与ifelse语句不同,它可以提供一系列可能的匹配条件来进行判断选择。这种方法的本质也可以看成ifelseifelse语句。 在使用switch语句的时候,需要判断的条件会包含在括号内。然后,每个需要判断条件都会放在代码块内大括号的内部,如下所示的一个简单例子: $a=3; switch($a) 1 “one detected” 2“two detected” 3“three detected” 因为这里的变量a被赋值为3,所以在switch语句中,它会选择大括号中符合条件的3执行“three detected”。,7.5.4 使用数据类型,Windows Powershell是一种强类型语言,不过在表现上上却像是无类型的。这是因为Windows Powershell在监测数据类型并采取相应操作方面做得很好。如果某个东西是字符串,Windows Powershell就会将其当作字符串处理。 例如,考虑如下三条语句: PS C: 1 + 1 PS C: 12:00 + :30 PS C: a + b 只有第一条语句能成功执行,因为在Windows Powershell中,可以将内容正确监测为数字,并允许进行加法操作,然而,时间和字母是无法相加的。但是如果将字母a和b用双引号引用,然后相加,操作就会成功。,10.6 使用PowerShell管理Windows,因为Windows Powershell中的脚本在默认情况下并没有启用,因此在部署或运行任何脚本或命令之前,还需要验证平台对脚本的支持级别。如果没有启动支持就尝试运行Windows Powershell脚本,就会看到错误信息。脚本也无法运行。在Windows Powershell中,通过使用Set-ExecutionPoliy cmdlet,可以设置4个不同级别的执行策略,这4个级别的详细信息如下表所示。,10.6.1查看网络

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论