消息源头对产业热点争议的反应
本章
开始启动
理解命令-线接口
理解Cmdlet
获取帮助
理解变量
理解异类
创建首脚本
摘要
本章提高Powershell技术基础知识使用速度,重点是Powershell2.0CTP2提供的新能力学习下载安装Powershell系统,与Powershell命令线接口合作,使用cmdlets系统,访问Powershell2.0帮助特性并写基本脚本本章并不打算完全启动指南取而代之的是它覆盖后几章需要理解的重要概念
开始启动
启动Powesshell最佳方式是访问WindowsPowershell主页,如上显示图2.1.
windowsPowershell主页的URLhttp://www.microsoft.com/powershell/.
网站提供Powershell信息并下载文档工具、阅读最新产品新闻并获取最新版Powershell下一步下载安装Powershell跳进安装过程前,必须澄清Powershell哪个版本最适合您的需要Powershell目前有两个版本从微软下载:Powershell1.0RTW和Powershell2.0CTP2以上每种版本在下文分节描述
WindowsPowershell主页
Powershell1.0RTW
Powershell当前版本为1.0RTWPowershell版本于2006年11月发布Powershell1.0RTW不包含第1章Powershell2.0CTP2新特征,Powershell1.0RTW可下载所有支持平台http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx.
Windows服务器2008启动Powershell1.0
WindowsPowershell1.0包含为Windows服务器2008操作系统的一个特征Powershell使用前,必须使用服务器管理器并发完成此任务时, 沿循这些步骤 :
登录带本地管理员权限的服务器
点击启动中键并点击运行.
内运行对话框类型ServerManager.msc中键并点击好.
内特征汇总区域点击添加特征任务 。
On选择特征页选择WindowsPowershell特征并点击下个.
On确认安装选择页面审查选择后点击安装.
On安装结果页面审查结果并点击关闭.
Powershell2.0CTP2
Powershell2.0CTP2社区技术预览版Powershell语言Powershell2.0预发版包含第一章描述的新语言特征,最适合我们中有兴趣实验Powershell2.0新能力者在实验室或预制作环境安装Powershell2.0CTP2前,需要确保系统满足下列最小安装要求:
Powershell2.0CTP2支持操作系统包括Windows XP服务包2WindowsVista服务包1WindowsVista服务包1WindowsServer2003服务包1和Windows服务器2008
微软.NET框架2.0安装Powershell2.0CTP2
微软.NET框架3.0使用Powershell2.0CTP2中新的图形电shell
Get-Eventcdlet仅在WindowsVista和Windows服务器2008上工作,需要微软.NET框架3.5
windows远程管理CTP2组件使用Powershell2.0CTP2中新重动功能
WindowsVista服务包1(SP1)和Windows服务器2008
列表中所有附加组件都可从微软下载中心下载http://www.microsoft.com/downloads/(见图2.2)
安装前Powershell2.0CTP2
当前Powershell1.0安装系统时,需先删除后安装Powershell2.0后续步骤描述卸载Powershell1.0程序,视操作系统而定
卸载WindowsPowershell1.0
Windows XP-SP2和Windows服务器2003下方添加/撤销程序中选择选项显示更新删除系统应用Powershell更新926139上下926140本地化926141MUI打包
WindowsVista:转到控制板>程序特征>安装更新.卸载Powershell更新KB928439.
Windows服务器2008Windows服务器2008,Powershell1.0Powershell1.0启动后,必须先关上特征才能安装Powershell2.0CTP2启动服务器管理员并选择删除特征选项从列表中选择Powershell并禁用特征
注释-请注意您会不对可安装Windows2008服务器Powershell2.0
微软下载中心
安装配置winRM
WinRM是微软实现WS管理协议,即简单对象存取协议SOAP基础协议为系统存取和交换管理信息提供常用方法默认WinRM使用端口80和443运输因此它与大多数防火墙兼容winRM还允许必要时修改这些默认端口WinRM原创WindowsVista和Windows服务器2008WS管理2.0CTP需要组件支持Powershell2.0CTP2发布WS管理2.0CTP更新https://connect.microsoft.com/site/sitehome.aspx?SiteID=200&wa=wsignin1.0
注释-WindowsVista系统需要WindowsVista服务打包1实现WinRM功能
下载安装Powershell2.0
安装.NET框架2.0和.NET框架3.0后,并验证系统安装WinRM组件后,下一步从Powershell2.0CTP2安装包下载Powershell2.0http://www.microsoft.com/downloads/details.aspx?FamilyId=7C8051C2-9BFC-4C81-859D-0864979FA403&displaylang=en(见图2.3)
WindowsPowershell2.0下载
安装Powershell下载页面查找正确的Powsshell安装包x86或x64版本Windows并按下适当的下载链路下载Powershell安装包下一步启动Powershell安装时点击打开下载框或双击安装文件文件名因平台、Windows版本和语言打包而异 。)安装程序启动后,按安装指令执行
另一种安装法是在命令行静默安装,使用Powershell安装文件名/quiet切换系统管理服务器或软件管理法发布登录脚本或系统管理服务器或软件管理法执行静默安装时遵循这些步骤
点击启动>运行.
类型md测试并点击好打开amd命令提示
类型PowerShell-exe-filename/静默并按Enter
安装Powershell后,您可以通过三种不同方法访问它使用第一种方法从Start菜单访问它时,要遵循这些步骤:
点击启动>所有程序>WindowsPowershell2.0.
点击WindowsPowershell.
使用第二个方法时遵循这些步骤
点击启动>运行.
类型电源shell中运行对话框并点击好.
这两种方法打开Powershell控制台图2.4.
Powershell控制台
跟踪这些步骤使用cmd命令提示的第三个方法
点击启动>运行.
类型md并点击好打开cmd命令提示
命令提示类型权电板中显示图2.5并按Enter
Powershell控制台通过cmd命令提示启动
WSMan配置设置
Powershell回移和PSJobs特征依赖Windows远程管理技术Powershell2.0默认WSMan设置幸运的是,这个过程简单化 通过Powershell脚本调用Configure-Wsman.ps1中$Some文件夹中脚本配置WS-man设置下命令执行Configure-WSMan.ps1脚本取自$Some位置 :
shome-Wsman.ps1
请注意:Powershell2.0默认脚本执行策略受限),Configure-WSman.ps1初始脚本不允许运行 。屏幕片后显示错误,如果试图运行此脚本而不修改默认脚本执行策略则会收到错误
PSC:++shome-Wsman.psFile C:\WINDOWS\system32\WindowsPowerShell\v1.0\\Configure-Wsman.ps1
无法加载, 因脚本执行在此禁用
系统化详情请见Get-help签名一行查文2+++shomeConfit-Wsman.psPSC####
允许Configure-WSMan.ps1脚本成功执行,S可用et-ExecutionPolicymdlet设置执行策略远程签名中显示的示例脚本补全后,可选用Set-ExecutionPolicymdlet返回Powershell默认脚本执行策略命令序列显示三大单动作:设置脚本执行策略远程签名,执行Configure-WSMan.ps1脚本后设置脚本执行策略返回默认set执行策略cmdlet后段写Powershell基本脚本第五章“理解电shell安全”,详细讨论Powershell安全和相关最佳实践Configure-WSMan.ps1脚本
PSC:#set执行策略远程签名PSC:++shome-Wsman.ps配置WSMan...WSMan配置完全开关端80和端口443PSC:#set执行策略默认PSC####
完成前描述步骤后Powershell2.0CTP2配置并准备使用
理解命令-线接口
Powershell使用语法CLI类似于CLI其他贝壳语法Powershell命令基本组件当然是命令名称执行此外,命令可使用参数和参数来更具体化Powershell命令可使用下列格式:
[命令名称][命令名]-[参数][指令名]-[参数]-[参数]-[参数]-[指令名]-[参数]-[参数]-[参数]-[参数1],[参数2]
注释-Powershell系统参数类变量为命令、脚本或函数所接受安市参数推理值分配参数虽然这些术语常互换使用,但记住这些定义有助于讨论Powershell使用时使用这些定义
运行命令、参数和参数dir系统命令带/w参数显示输出dir系统广格式化)和参数C:\temp.txt中显示
C:dir/wC:\temp*.txt卷C即OS卷序号为1784-ADF9C:\temp目录错误Stuff.txt介质c.txt注解.txt进度4文件953字节0789958656字节免费C:###
命令结果为广格式目录列表.txt文件输入C:\temp.使用dir系统命令无参数或参数,结果完全不同Powershell也有相同结果例举Powershell基本命令获取进程信息探索者exe:
PSC:NET进程-Name探索者Handles NPER(K)PM(K)VM(M)CPUI进程---------------------------------------------------------------80720316721406814962951280探险PSC####