当前位置:首页 > 技术文章 > 正文内容

Windows PowerShell10个常用命令的30个示例

Windows PowerShell中10个常用命令的每个命令3个示例,涵盖不同使用场景:

1.Get-Command(查找命令)

  • 查找所有可用命令
    Get-Command
    (列出所有已安装的命令模块和函数)
  • 查找与网络相关的命令
    Get-Command *network*
    (显示名称包含"network"的命令,如Get-NetIPAddress)
  • 查看Get-Service的详细信息
    Get-Command Get-Service | Format-List
    (显示命令的模块、参数等元数据)

2.Get-Help(获取帮助)

  • 查看Get-Process的基本帮助
    Get-Help Get-Process
    (显示命令的语法和简要说明)
  • 获取Copy-Item的详细示例
    Get-Help Copy-Item -Examples
    (展示实际使用案例)
  • 更新帮助文档后重新加载
    Update-Help
    Get-Help Stop-Service -Full
    (先更新帮助,再查看完整文档)

3.Get-Process(管理进程)

  • 列出所有进程并按CPU排序
    Get-Process | Sort-Object CPU -Descending
    (显示CPU占用最高的进程)
  • 查找特定名称的进程
    Get-Process -Name "chrome"
    (获取所有Chrome浏览器进程)
  • 结束无响应的进程
    Get-Process | Where-Object { $_.Responding -eq $false } | Stop-Process -Force
    (强制终止所有未响应的进程)

4.Get-Service(管理服务)

  • 列出所有运行中的服务
    Get-Service | Where-Object { $_.Status -eq "Running" }
  • 检查特定服务的状态
    Get-Service -Name "WinRM"
    (查看Windows远程管理服务状态)
  • 重启打印服务
    Restart-Service -Name "Spooler" -Force
    (强制重启打印池服务)

5.Set-ExecutionPolicy(脚本权限)

  • 允许本地脚本运行
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    (仅当前用户可运行本地未签名脚本)
  • 恢复默认限制
    Set-ExecutionPolicy Restricted -Force
    (禁止所有脚本执行)
  • 临时绕过策略执行脚本
    powershell.exe -ExecutionPolicy Bypass -File "C:\script.ps1"
    (不修改策略直接运行脚本)

6.Start-Service/Stop-Service

  • 启动蓝牙服务
    Start-Service -Name "bthserv"
  • 停止并禁用Windows更新服务
    Stop-Service -Name "wuauserv"
    Set-Service -Name "wuauserv" -StartupType Disabled
  • 重启IIS服务
    Restart-Service -Name "W3SVC" -Force

7.Copy-Item(文件操作)

  • 复制文件到备份目录
    Copy-Item "C:\data\report.docx" -Destination "D:\backup\"
  • 递归复制整个文件夹
    Copy-Item "C:\logs\" -Destination "E:\archive\" -Recurse
  • 复制时重命名文件
    Copy-Item "old.txt" -Destination "new.txt"

8.Remove-Item(删除文件)

  • 删除单个文件
    Remove-Item "C:\temp\junk.log" -Force
    (强制删除只读文件)
  • 清空文件夹内容(保留文件夹)
    Remove-Item "C:\cache\*" -Recurse -Force
  • 删除30天前的日志文件
    Get-ChildItem "C:\logs\*.log" | Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } | Remove-Item

9.Invoke-WebRequest(网络请求)

  • 下载文件
    Invoke-WebRequest " https://example.com/file.zip" -OutFile "C:\downloads\file.zip"
  • 获取网页内容并提取链接
    (Invoke-WebRequest " https://example.com").Links | Select-Object href
  • 提交POST请求(API调用)
    Invoke-WebRequest -Uri " https://api.example.com/login" -Method POST -Body @{user="admin";pass="123"}

10.ForEach-Object(循环处理)

  • 批量重命名文件
    Get-ChildItem "*.txt" | ForEach-Object { Rename-Item $_ -NewName ($_.Name -replace ".txt",".bak") }
  • 计算文件夹大小
    Get-ChildItem "C:\data\" | ForEach-Object { $sum += $_.Length }; $sum/1MB
  • 并行处理任务
    1..10 | ForEach-Object -Parallel { Start-Process "notepad" } -ThrottleLimit 3
    (同时打开3个记事本实例)

实用技巧:

  • 组合命令
    Get-Service | Where-Object { $_.Status -eq "Stopped" } | Start-Service
    (自动启动所有已停止的服务)
  • 输出到文件
    Get-Process > C:\process_list.txt
  • 测量命令执行时间
    Measure-Command { Get-ChildItem -Recurse }

相关文章

linux发行版-openSUSE Agama 15安装程序发布:带来多项可用性升级

openSUSE旗下仍在开发中的全新Linux安装工具Agama,于近日推出v15版本,带来了界面增强、实用新功能等一系列改进,为用户带来更顺畅的系统安装体验!界面优化:细节之处见用心新版本在本地化设...

【Vue3 基础】05.组件化(组件使用vuex)

这是 Vue3 + Vite + Pinia +TS + Element-Plus 实战系列文档。最近比较忙没什么时间写文章,争取早日把这个系列完结吧~生命周期和模板引用在本章之前,我们通过响应式 a...

vue3-内置组件-Teleport(vue内置指令有哪些)

Teleport<Teleport> 是一个内置组件,它可以将一个组件内部的一部分模板“传送”到该组件的 DOM 结构外层的位置去。基本用法有时我们可能会遇到这样的场景:一个组件模板的一部...

程序员开发必会之git常用命令,git配置、拉取、提交、分支管理

整理日常开发过程中经常使用的git命令!git配置SSH刚进入项目开发中,我们首先需要配置git的config、配置SSH方式拉取代码,以后就免输入账号密码了!# 按顺序执行 git config -...

Gitlab 的使用和代码审查流程介绍

1、先简洁介绍下项目常用的信息-面板统计页面2、用户信息面板3、服务器信息4、项目信息5、重点介绍代码提交审核机制和授权合并机制开发人员推送代码的时候不能直接推送到master,否则就会报错。此时开发...

配置GitLab流水线和门禁系统(gitlab工作流)

在项目开发的过程中,为了保证代码质量,我们会使用诸多代码质量检测工具,这些工具或是在本地,或是在云端,虽然工具可以检测出异常问题,但是这些问题还是需要我们程序员来修复,如果我们不强制所有人必须修复异常...