欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

25个常用PowerShell命令总结

程序员文章站 2022-07-05 10:28:08
尽管windows powershell已经出现一段时间了,习惯命令行的管理员可能对了解powershell功能的基础很感兴趣。 下面我们看看能由windows powe...

尽管windows powershell已经出现一段时间了,习惯命令行的管理员可能对了解powershell功能的基础很感兴趣。

下面我们看看能由windows powershell完成的最常见的25个任务。不止是这些任务很简单,显示语句的命令架构和其他powershell命令也很简单。掌握好这些基本命令是成为powershell专家的必经之路。

  入门级别

  1. 像文件系统那样操作windows registry——cd hkcu:
  2. 在文件里递回地搜索某个字符串——dir –r | select string "searchforthis"
  
  3. 使用内存找到五个进程——ps | sort –p ws | select –last 5
  4. 循环(停止,然后重启)一个服务,如dhcp——restart-service dhcp
  5. 在文件夹里列出所有条目——get-childitem – force
  6. 递归一系列的目录或文件夹——get-childitem –force c:\directory –recurse
  7. 在目录里移除所有文件而不需要单个移除——remove-item c:\tobedeleted –recurse
  8. 重启当前计算机——(get-wmiobject -class win32_operatingsystem -computername .).win32shutdown(2)

  收集信息

  9. 获取计算机组成或模型信息——get-wmiobject -class win32_computersystem
  10. 获取当前计算机的bios信息——get-wmiobject -class win32_bios -computername .
  11. 列出所安装的修复程序(如qfe或windows update文件)——get-wmiobject -class win32_quickfixengineering -computername .
  12. 获取当前登录计算机的用户的用户名—— get-wmiobject -class win32_computersystem -property username -computername .
  13. 获取当前计算机所安装的应用的名字——get-wmiobject -class win32_product -computername . | format-wide -column 1
  14. 获取分配给当前计算机的ip地址——get-wmiobject -class win32_networkadapterconfiguration -filter ipenabled=true -computername . | format-table -property ipaddress
  15. 获取当前机器详细的ip配置报道——get-wmiobject -class win32_networkadapterconfiguration -filter ipenabled=true -computername . | select-object -property [a-z]* -excludeproperty ipx*,wins*
  16. 找到当前计算机上使用dhcp启用的网络卡——get-wmiobject -class win32_networkadapterconfiguration -filter "dhcpenabled=true" -computername .
  17. 在当前计算机上的所有网络适配器上启用dhcp——get-wmiobject -class win32_networkadapterconfiguration -filter ipenabled=true -computername . | foreach-object -process {$_.enabledhcp()}

  软件管理

  18. 在远程计算机上安装msi包——(get-wmiobject -computername targetmachine -list | where-object -filterscript {$_.name -eq "win32_product"}).install(\\machinewheremsiresides\path\package.msi)
  19. 使用基于msi的应用升级包升级所安装的应用——(get-wmiobject -class win32_product -computername . -filter "name='name_of_app_to_be_upgraded'").upgrade(\\machinewheremsiresides\path\upgrade_package.msi)
  20. 从当前计算机移除msi包——(get-wmiobject -class win32_product -filter "name='product_to_remove'" -computername . ).uninstall()
  机器管理
  21. 一分钟后远程关闭另一台机器——start-sleep 60; restart-computer –force –computername targetmachine
  22. 添加打印机——(new-object -comobject wscript.network).addwindowsprinterconnection(\\printerserver\hplaser3)
  23. 移除打印机——(new-object -comobject wscript.network).removeprinterconnection("\\printerserver\hplaser3 ")
  24. 进入powershell会话——invoke-command -computername machine1, machine2 -filepath c:\script\script.ps1