本文共 5843 字,大约阅读时间需要 19 分钟。
一、启动PowerShell 2.0
打开“开始”、“所有程序”、“附件”、“Windows PowerShell”程序组,点击“Windows PowerShell”。
二、基本操作
1、查看可用的命令的列表
Get-Command
注:PowerShell有自动补齐命令的功能。例如,在本例中只需要输入“get-co”,然后按TAB键,PowerShell 就会自动补齐该命令。
2、查看Get-Alias的帮助信息
PS C:\Users\Administrator> Get-Help Get-Alias
名称 Get-Alias
摘要 获取当前会话的别名。
语法 Get-Alias [[-Name] <string[]>] [-Exclude <string[]>] [-Scope <string>] [<CommonParameters>]
Get-Alias [-Definition <string[]>] [-Exclude <string[]>] [-Scope <string>] [<CommonParameters>]
说明 Get-Alias cmdlet 获取当前会话的别名(命令和可执行文件的替代名称)。其中包括内置别名、已设置或导入的别名,以及已添加 到 Windows PowerShell 配置文件中的别名。
默认情况下,Get-Alias 获取别名并返回命令名称。当使用 Definition 参数时,Get-Alias 采用命令名称并返回其别名。
相关链接 Online version: http://go.microsoft.com/fwlink/?LinkID=113306 about_Aliases Set-Alias New-Alias Export-Alias Import-Alias Alias Provider
备注 若要查看示例,请键入: "get-help Get-Alias -examples". 有关详细信息,请键入: "get-help Get-Alias -detailed". 若要获取技术信息,请键入: "get-help Get-Alias -full".
3、查看当前可用的命令名称
PS C:\Users\Administrator> Get-Alias
CommandType Name Definition ----------- ---- ---------- Alias % ForEach-Object Alias ? Where-Object Alias ac Add-Content Alias asnp Add-PSSnapIn Alias cat Get-Content Alias cd Set-Location
。。。
4、查看当前的进程
PS C:\Users\Administrator> Get-Process
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 1167 8 2916 5468 109 0.45 484 csrss 212 8 12208 13116 176 2.51 524 csrss 240 8 5836 9836 59 0.31 2784 dllhost 77 3 1264 3140 42 0.00 3376 dwm 432 13 17344 18228 125 2.82 3480 explorer 128 4 5320 4288 35 0.00 3008 fdhost 58 3 1204 2780 37 0.00 2628 fdlauncher 0 0 0 24 0 0 Idle 152 5 6664 8980 58 0.09 1540 inetinfo 1933 36 89392 79348 520 9.09 740 java
。。。
5、尝试运行一个错误的命令
PS C:\Users\Administrator> Processes 无法将“Processes”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后重试。 所在位置 行:1 字符: 10 + Processes <<<< + CategoryInfo : ObjectNotFound: (Processes:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
6、定义一个新的别名
PS C:\Users\Administrator> Set-Alias Processes Get-Process PS C:\Users\Administrator> Processes
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 1156 8 2916 5468 109 0.45 484 csrss
。。。
7、验证新增的别名
PS C:\Users\Administrator> Get-Alias
CommandType Name Definition ----------- ---- ---------- 。。。 Alias Processes Get-Process。。。
8、验证帮助信息
PS C:\Users\Administrator> Get-Help Processes
名称 Get-Process
摘要 获取在本地计算机或远程计算机上运行的进程。
语法 Get-Process [[-Name] <string[]>] [-ComputerName <string[]>] [-FileVersionInfo] [-Module] [<CommonParameters>]
Get-Process -Id <Int32[]> [-ComputerName <string[]>] [-FileVersionInfo] [-Module] [<CommonParameters>]
Get-Process -InputObject <Process[]> [-ComputerName <string[]>] [-FileVersionInfo] [-Module] [<CommonParameters>]
。。。
注意:显示Precesses命令的帮助信息仍然是原始命令Get-Process的信息。
三、使用管道和变量
1、排序显示
PS C:\Users\Administrator> Get-Process | Sort-Object -Property id
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 0 0 0 24 0 0 Idle 577 0 0 1280 4 4 System 28 1 252 428 4 0.05 420 smss 1163 8 2924 5476 109 0.50 484 csrss 212 7 12316 13192 176 6.07 524 csrss 98 4 1136 2972 36 0.05 532 wininit 115 3 1268 2736 26 0.02 564 winlogon 283 7 2212 4216 27 5.24 612 services 990 13 4188 6952 44 2.84 624 lsass。。。
2、排序且筛选显示的列
PS C:\Users\Administrator> Get-Process | Select-Object -Property id,Handles,ProcessName | Sort-Object -Property id
Id Handles ProcessName -- ------- ----------- 0 0 Idle 4 575 System 420 28 smss 484 1158 csrss 524 212 csrss 532 98 wininit 564 115 winlogon 612 283 services 624 990 lsass 632 160 lsm 740 1934 java。。。
3、按顺序显示前10个
PS C:\Users\Administrator> Get-Process | Sort-Object -Property id | Select-Object -First 10
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 0 0 0 24 0 0 Idle 576 0 0 1280 4 4 System 28 1 252 428 4 0.05 420 smss 1157 8 2924 5476 109 0.50 484 csrss 212 7 12316 13196 176 6.94 524 csrss 98 4 1136 2972 36 0.05 532 wininit 115 3 1268 2736 26 0.02 564 winlogon 283 7 2212 4216 27 5.26 612 services 990 13 4188 6932 44 2.84 624 lsass 160 3 1524 3032 24 0.00 632 lsm
4、格式化
PS C:\Users\Administrator> Get-Process | Sort-Object -Property id | Select-Object -First 10 | Format-List
Id : 0 Handles : 0 CPU : Name : Idle
Id : 4 Handles : 575 CPU : Name : System
。。。
5、将显示结果储存到变量,然后显示变量
PS C:\Users\Administrator> $processes = Get-Process | Sort-Object -Property id PS C:\Users\Administrator> $processes
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 0 0 0 24 0 0 Idle 576 0 0 1280 4 4 System 28 1 252 428 4 0.05 420 smss 1166 8 2924 5480 109 0.51 484 csrss 212 7 12316 13268 176 7.38 524 csrss 98 4 1136 2972 36 0.05 532 wininit 115 3 1268 2736 26 0.02 564 winlogon 283 7 2212 4216 27 5.26 612 services。。。
三、查看PowerShell版本
1、Windows Server 2008 x64 的 PowerShell 1.0
在Windows Server 2008 x64使用“服务器管理器”通过“添加功能”安装PowerShell 1.0。
PS C:\Users\Administrator> Get-Host Name : ConsoleHost Version : 1.0.0.0 InstanceId : 9f1ea99d-67bd-473d-a826-b64a74b178cf UI : System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture : zh-CN CurrentUICulture : zh-CN PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
2、Windows Server 2008 x64 的 PowerShell 2.0
通过官网下载安装程序 Windows6.0-KB968930-x64.msu,安装之后会在“附件”创建一个“Windows PowerShell”的程序组。
PS C:\Users\Administrator> Get-Host Name : ConsoleHost Version : 2.0 InstanceId : acc0f1f3-ce59-4f72-af22-91a1a264a2f0 UI : System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture : zh-CN CurrentUICulture : zh-CN PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy IsRunspacePushed : False Runspace : System.Management.Automation.Runspaces.LocalRunspace
转载地址:http://rykmo.baihongyu.com/