Board logo

标题: Windows PowerShell的12项酷功能 [打印本页]

作者: electronixtar     时间: 2006-11-15 23:23    标题: Windows PowerShell的12项酷功能

Windows PowerShell的12项酷功能

Windows PowerShell 1.0已经发布,微软windowsvistablog上,开发人员列举了Windows Vista中Windows PowerShell所提供的12项酷酷的功能:


1. 内置Cmdlets (即"commandlets")
Windows PowerShell中的所有Cmdlets都允许这样的动名词:get-service, get-process, stop-service, get-wmiobject.


2. 强大的通配符和操作对象
要得到以w开头的服务及其依赖服务只要输入:


PS> get-service w* | format-list DisplayName, DependentServices


3. 在犯错误前测试命令
Windows PowerShell 有意向独特的功能:Whatif ,可以不执行命令就告诉你命令执行结果.如:


PS> stop-service w3* -whatif


4. 获取副本
PowerShell 可以开始和结束所有命令的副本,可以在脚本中轻易测试命令并同时保存.


PS> Start-Transcript -Path c:demodfoshow.txt
PS> Stop-Transcript


5. 从命令行发布Windows对话


因为Windows PowerShell位对象而优化,可以向.NET  Framework一样从命令行访问COM对象,下列命令告诉你的Vista机器发表"Windows Vista and PowerShell"字串.


PS> $spVoice = new-object -com "SAPI.spvoice"
PS> $spVoice.Speak("Windows Vista and PowerShell")


6. 使用Windows PowerShell访问诸如Windows Media Player 11等的应用程序


PS> $band = "The Posies"
PS> $player = New-object -com wmplayer.ocx
PS> $playlist = $player.mediacollection.getbyauthor($band)
PS> $player.openPlayer($playlist.item(0).sourceurl)


7. Windows PowerShell作为命令行存储计算器
PowerShell可以完成基本的计算工作


PS> 2*2


不过,Windows PowerShell也可以快速解决存储问题,例如,备份11GB的数据需要多少个700MB的CD.


PS> 11gb/700mb


那么,需要多少个1000GB的存储来备份每个320GB,共425个的Vista桌面呢?


PS > (320gb*425)/1000GB


8. PowerShell 用作日历计算


计算多少天到新年:


PS> ([DateTime]"1/1/2007" -[datetime]::now).days

9. 返回机器上某种类型文件的数量


Windows Vista有许多类型的事件记录和组策略文件等.下列命令是返回当前目录及其子目录中VBScript, Bat 和 PowerShell 脚本的数量:


PS> dir -include *.vbs, *.ps1, *.bat -recurse | group-object extension -noelement


10. 从命令行收集Windows System Assessment Tool数据


PS> get-wmiobject win32_winsat | format-table __SERVER, *SCORE -autosize
PS> get-wmiobject win32_winsat | select *score | out-chart -Title "System Assessment Scores by PowerGadgets"



11. 配置UAC(User Account Control)


PS> set-itemproperty -path HKLM:SOFTWAREMICROSOFTWINDOWSCurrentVersionPoliciesSystem -name ConsentPromptBehaviorAdmin -value 0


12. 管理BitLocker


PS > $drives = get-wmiobject -namespace rootCIMv2SecurityMicrosoftVolumeEncryption -class Win32_EncryptableVolume
PS> $drives | format-table DriveLetter, PersistentVolumeID -autosize
PS> $BitLockDrive = $drives[0]
PS> $BitLockDrive.GetProtectionStatus()
PS> $BitLockDrive.DisableKeyProtectors()
PS> $BitLockDrive.EnableKeyProtectors()


访问:微软windowsvistablog

访问: Windows PowerShell 1.0 发布  
作者: zts59     时间: 2006-11-16 01:06
功能确实强大,我很喜驱它的导航功能,像注册表中用HKLM:就可进入注册表中的HKEY_LOCAL_MACHINE中去,竟然可以用CD和MD。晕了。哈哈
作者: electronixtar     时间: 2006-11-16 03:42
说白了,PowerShell把 Windows Shell Namespace 无私的放到大家面前了,很好!
作者: vkill     时间: 2006-11-16 04:10
可以移植到现有的win xp 2003上多好,呵呵~我们先体验体验
作者: zts59     时间: 2006-11-16 04:52
有支持XP和2003的,微软官方下载:http://www.microsoft.com/windows ... shell/download.mspx

要.NET支持
作者: vkill     时间: 2006-11-16 05:31


  Quote:
Originally posted by zts59 at 2006-11-16 04:52:
有支持XP和2003的,微软官方下载:http://www.microsoft.com/windows ... shell/download.mspx

要.NET支持

thanks  我win2003 安装有 .NET Framework 2.0,可以用,呵呵~

[ Last edited by vkill on 2006-11-16 at 05:33 AM ]
作者: IceCrack     时间: 2006-11-21 07:41
这个一定要试用一下
作者: lxmxn     时间: 2006-11-22 07:14

  哈哈,我已经用上了,感觉真的不错啊~~

  感谢 est 兄提供的下载链接。