PowerShell常用100个命令大全:从入门到进阶(附系统/网络/文件操作命令)

235次阅读
PowerShell 作为 Windows 系统更强大的命令行工具,相比 CMD 能实现更复杂的自动化操作 —— 它以 “对象” 为核心,兼容 CMD 所有命令,却能完成 CMD 做不到的高级任务(如批量处理数据、远程管理)。以下是从入门到进阶的 100 个常用 PowerShell 命令,按功能分类,附详细用途,适合系统管理员、开发者及进阶用户。
PowerShell常用100个命令大全:从入门到进阶(附系统/网络/文件操作命令)

一、先搞懂:PowerShell 与 CMD 的核心区别

  • 本质差异:CMD 返回 “文本”,而 PowerShell 返回 “结构化对象”(可直接提取属性,如从进程信息中单独筛选 “内存占用”);
  • 兼容性:PowerShell 可直接运行所有 CMD 命令(如diripconfig),但 PowerShell 的专属命令(如Get-Process)无法在 CMD 中执行;
  • 优势:支持管道操作(将一个命令的输出作为另一个命令的输入)、脚本自动化、跨平台(PowerShell 7 + 支持 Windows/Linux/macOS)。

二、3 种方式打开 PowerShell

  1. 快速启动Win+R打开运行框,输入PowerShell回车,打开默认权限窗口;
    PowerShell常用100个命令大全:从入门到进阶(附系统/网络/文件操作命令)
  2. 管理员权限:在开始菜单搜索 “PowerShell”,右键 “以管理员身份运行”(执行系统级命令时需此权限);
    PowerShell常用100个命令大全:从入门到进阶(附系统/网络/文件操作命令)
  3. 文件夹内打开:在任意文件夹地址栏输入PowerShell回车,直接定位到当前路径(类似 CMD 的 “在指定目录打开”)。
    PowerShell常用100个命令大全:从入门到进阶(附系统/网络/文件操作命令)

三、100 个常用 PowerShell 命令(分类详解)

1. 系统与进程管理(11 个)
  • Get-Process:获取所有运行进程(含 ID、内存占用、启动时间等);
  • Stop-Process:终止指定进程(支持按进程名、ID 或对象操作,如Stop-Process -Name "notepad"关闭所有记事本);
  • Start-Process:启动新进程(可指定参数,如Start-Process "chrome.exe" -ArgumentList "https://www.baidu.com"打开百度);
  • Get-Service:查看系统服务状态(运行中 / 已停止,如Get-Service -Name "wuauserv"查看 Windows 更新服务);
  • Start-Service/Stop-Service/Restart-Service:启动 / 停止 / 重启指定服务;
  • Set-Service:修改服务属性(如Set-Service -Name "wuauserv" -StartupType "Automatic"设为自动启动);
  • Get-ComputerInfo:获取完整系统信息(操作系统版本、BIOS 版本、硬件配置等);
  • Restart-Computer:重启本地或远程计算机(需权限,如Restart-Computer -ComputerName "Server01"远程重启服务器)。
2. 网络与连接(6 个)
  • Test-Connection:类似ping,但返回对象(含响应时间、TTL 值,如Test-Connection "baidu.com" -Count 4测试 4 次连接);
  • Get-NetAdapter:获取网络适配器详情(名称、MAC 地址、状态、IP 配置等);
  • Resolve-DnsName:解析 DNS 记录(如Resolve-DnsName "baidu.com"查看域名对应的 IP);
  • New-NetFirewallRule:创建防火墙规则(如New-NetFirewallRule -DisplayName "Allow-SSH" -Direction Inbound -LocalPort 22 -Protocol TCP -Action Allow允许 SSH 连接);
  • Get-NetTCPConnection:查看所有活动 TCP 连接(含本地 / 远程 IP、端口、状态)。
3. 文件与数据处理(10 个)
  • Get-Content:读取文件内容(如Get-Content "D:\test.txt"读取文本,支持按行读取);
  • Set-Content/Add-Content:覆盖写入 / 追加内容到文件(如"Hello" | Set-Content "test.txt"写入文本,"World" | Add-Content "test.txt"追加);
  • Get-FileHash:计算文件哈希值(验证文件完整性,如Get-FileHash "setup.exe" -Algorithm SHA256生成 SHA256 值);
  • Export-Csv/Import-Csv:导出 / 导入 CSV 文件(如Get-Process | Export-Csv "processes.csv"将进程信息存为表格);
  • ConvertTo-Json/ConvertFrom-Json:对象与 JSON 互转(如Get-Service | ConvertTo-Json将服务信息转为 JSON 字符串);
  • Export-Clixml/Import-Clixml:序列化 / 反序列化对象(保存复杂数据结构,如Get-Process | Export-Clixml "processes.xml")。
4. 模块与包管理(7 个)
  • Install-Module:从 PowerShell Gallery 安装模块(需先执行Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted信任仓库);
  • Import-Module:加载模块到当前会话(如Import-Module ActiveDirectory加载 AD 管理模块);
  • Get-Module:查看已加载的模块;
  • Update-Module:更新已安装的模块;
  • Find-Module:搜索在线模块(如Find-Module -Name "PSScriptAnalyzer"查找脚本分析工具);
  • Install-Package/Get-Package:安装 / 查看软件包(支持 MSI、EXE 等格式)。
5. 安全管理(6 个)
  • Get-ExecutionPolicy:查看脚本执行策略(默认禁止运行未签名脚本);
  • Set-ExecutionPolicy:修改策略(如Set-ExecutionPolicy RemoteSigned允许运行本地脚本);
  • Get-Credential:弹出对话框获取用户名和密码(用于需要身份验证的操作);
  • ConvertTo-SecureString:将明文转换为加密字符串(如"password" | ConvertTo-SecureString -AsPlainText -Force);
  • Get-Acl/Set-Acl:查看 / 修改文件 / 注册表的权限(访问控制列表)。
6. 远程管理(5 个)
  • Enter-PSSession:进入远程计算机的交互式会话(如Enter-PSSession -ComputerName "Server01"远程登录服务器);
  • Invoke-Command:在远程计算机执行命令(如Invoke-Command -ComputerName "Server01" -ScriptBlock {Get-Process}获取远程进程);
  • New-PSSession:创建持久化远程会话(多次操作无需重复验证);
  • Enable-PSRemoting:配置计算机接收远程命令(需管理员权限);
  • Test-WSMan:检查 WinRM 服务是否正常(远程管理依赖此服务)。
7. 对象处理与管道(7 个)
  • Where-Object:筛选对象(如Get-Process | Where-Object {$_.MemoryUsage -gt 100MB}筛选内存占用超 100MB 的进程);
  • Select-Object:选择对象属性(如Get-Process | Select-Object Name, Id, MemoryUsage只显示名称、ID 和内存);
  • Sort-Object:按属性排序(如Get-Process | Sort-Object MemoryUsage -Descending按内存降序排列);
  • Group-Object:按属性分组(如Get-Process | Group-Object -Property "Name"按进程名分组);
  • Measure-Object:计算统计值(如Get-Process | Measure-Object -Property "MemoryUsage" -Average -Sum计算内存平均值和总和);
  • ForEach-Object:遍历对象执行操作(如Get-ChildItem *.txt | ForEach-Object {Rename-Item $_ -NewName "$($_.Name).bak"}批量重命名 TXT 文件)。
8. 注册表与证书(6 个)
  • Get-ItemProperty/Set-ItemProperty:读取 / 修改注册表键值(如Get-ItemProperty "HKLM:\Software\Microsoft\Windows");
  • New-Item:创建注册表项或文件目录;
  • Get-ChildItem:列出注册表项或目录内容(支持递归,如Get-ChildItem "HKLM:\Software" -Recurse);
  • Get-Certificate:查看证书信息(如Get-Certificate -StoreLocation "Cert:\CurrentUser\My"查看当前用户证书);
  • New-SelfSignedCertificate:创建自签名证书(用于测试或内部服务)。
9. 日志事件(4 个)
  • Get-EventLog:读取系统事件日志(如Get-EventLog -LogName "System" -EntryType "Error"查看系统错误日志);
  • Clear-EventLog:清空指定日志;
  • Write-EventLog:写入自定义事件到日志;
  • Get-WinEvent:高级日志查询(支持筛选、排序,比Get-EventLog功能更强)。
10. WMI/CIM 管理(3 个)
  • Get-WmiObject:查询 WMI 信息(旧版,兼容性高,如Get-WmiObject -Class Win32_OperatingSystem获取操作系统信息);
  • Get-CimInstance:查询 CIM 信息(新版,跨平台,替代Get-WmiObject);
  • Invoke-CimMethod:调用 CIM 类方法(如远程重启服务)。
11. 作业与后台任务(5 个)
  • Start-Job:在后台启动任务(不阻塞当前会话,如Start-Job -ScriptBlock {Get-ChildItem D:\ -Recurse}后台遍历 D 盘文件);
  • Get-Job:查看后台任务状态;
  • Receive-Job:获取任务结果;
  • Wait-Job:等待任务完成;
  • Stop-Job:终止后台任务。
12. 字符串与文本(5 个)
  • Select-String:文本搜索(支持正则,如Get-Content "test.txt" | Select-String "error"查找含 “error” 的行);
  • Format-Table/Format-List:将对象输出为表格 / 列表(控制显示格式);
  • ConvertTo-Html:将对象转为 HTML 表格(如Get-Process | ConvertTo-Html > "processes.html"生成网页报告)。
13. 调试与错误处理(6 个)
  • Set-PSBreakpoint:在脚本中设置断点(调试时暂停执行);
  • Write-Debug/Write-Verbose:输出调试 / 详细日志(需开启对应参数);
  • Write-Warning/Write-Error:输出警告 / 错误信息;
  • Try/Catch/Finally:结构化错误处理(捕获异常并处理,避免脚本中断)。
14. 变量与作用域(5 个)
  • Get-Variable/Set-Variable:查看 / 创建修改变量;
  • Remove-Variable/Clear-Variable:删除变量 / 清空变量值。
15. 其他实用命令(10 个)
  • Get-PSDrive:查看所有 PS 驱动器(含磁盘、注册表、证书等虚拟驱动器);
  • Get-History:查看当前会话的命令历史;
  • Start-Transcript/Stop-Transcript:记录会话所有输出到文件(用于审计或复盘);
  • Get-Alias:查看命令别名(如Get-Alias发现lsGet-ChildItem的别名);
  • Get-Help:查看命令帮助(如Get-Help Get-Process -Full获取完整文档);
  • Update-Help:下载最新帮助文档。

四、PowerShell 核心优势:为什么值得学?

  1. 对象导向:命令输出为结构化对象,可直接提取属性(如Get-Process | Select-Object Name, Id),无需解析文本;
  2. 跨平台支持:PowerShell 7 + 可在 Windows、Linux、macOS 上运行,适合多系统管理;
  3. 深度集成:直接调用.NET 框架、COM 组件、REST API,扩展性极强;
  4. 自动化神器:结合脚本和任务计划,可实现批量部署、日志分析、故障自动修复等复杂操作。

总结

PowerShell 的 100 个命令覆盖了系统管理、网络操作、文件处理、安全控制等场景,其核心优势在于 “对象处理” 和 “自动化能力”。对于 IT 管理员,用它能批量管理服务器、自动生成报告;对于开发者,可快速处理数据、调试脚本。从基础的Get-Process到进阶的远程管理命令,建议从日常场景练起(如用Get-Content读取日志、Test-Connection诊断网络),逐步掌握管道和脚本编写,解锁 PowerShell 的强大功能。
正文完
请使用微信扫一扫(自愿无偿打赏-乞讨)
post-qrcode
 0

未知文明

特别声明
网站内容部分通过网络收集、整理与优化,若您发现任何内容存在侵权问题,请及时通过admin@xwenming.com与我联系,将在核实后第一时间删除相关内容。
本站严格遵守法律法规,坚决不提供任何破解、侵权类技术支持或资源,所有内容仅用于学习交流与经验分享。感谢您的理解与支持,祝您在本站收获实用信息!
随机文章
端口被占用了?别再去记命令了,这个1.5MB小工具TCPView一秒搞定

端口被占用了?别再去记命令了,这个1.5MB小工具TCPView一秒搞定

想开个服务,结果提示"端口被占用",你打开cmd,记了一堆netstat、findstr命令,最后还是搞不清楚...
Windows 11系统最佳性能优化设置指南:禁用搜索界面的广告

Windows 11系统最佳性能优化设置指南:禁用搜索界面的广告

默认情况下,点击任务栏的搜索后,出现的界面中会给你推荐大量的广告、各种游戏、乱七八糟资讯等等。 点击右上方的“...
必备技能!用这款工具校验文件,确保下载安全无篡改

必备技能!用这款工具校验文件,确保下载安全无篡改

在网络下载的世界里,我们常常面临一个潜在风险 —— 下载的文件可能被篡改。无论是重要的系统安装包、珍贵的学习资...
EcoPaste:Windows 和 Mac 跨平台开源剪切板管理工具,轻量安全还能 OCR 识别

EcoPaste:Windows 和 Mac 跨平台开源剪切板管理工具,轻量安全还能 OCR 识别

每天复制粘贴内容时总在抓狂:刚复制的文字被新内容覆盖,想找半小时前复制的图片翻遍文件夹都找不到,跨设备传个验证...
Windows11(24H2)ReFS文件系统:速度比NTFS快80%!适用场景与性能实测

Windows11(24H2)ReFS文件系统:速度比NTFS快80%!适用场景与性能实测

Windows 11 2024(24H2)更新带来了一个重磅功能 ——ReFS 文件系统!这个原本只在 Win...
都5202年了,U盘到底可不可以直接拔?

都5202年了,U盘到底可不可以直接拔?

最近有人问我,插在电脑上的U盘到底能不能直接拔掉?很多人发现直接拔掉好像也没有出现什么问题。这个问题要分不同情...
经典编辑器!Notepad++ 轻量又好用,中文界面 + 无广告,写代码、记笔记都顺手,比 VSCode 更省心

经典编辑器!Notepad++ 轻量又好用,中文界面 + 无广告,写代码、记笔记都顺手,比 VSCode 更省心

用惯了 VSCode 的复杂设置,或是嫌 Sublime 全英文界面看着头疼?有没有一款编辑器,既能轻松写代码...
WPS 关闭广告、关闭云盘、禁默认打开方式完整教程!让其成为纯净的办公软件

WPS 关闭广告、关闭云盘、禁默认打开方式完整教程!让其成为纯净的办公软件

你的电脑是不是安装了WPS,这个软件不仅会产生大量的弹窗广告,还会占用后台资源,下面就教你让它变成纯净的办公软...
微信终于能跟AI聊天了!这只「龙虾」直接住进你手机

微信终于能跟AI聊天了!这只「龙虾」直接住进你手机

兄弟们,大新闻来了。 微信官方今天放了个大招,直接把AI助手给塞进微信里了。 没错,就是你每天都在用的那个微信...
手机开发者选项咋开?一看就会,调试、连电脑全搞定

手机开发者选项咋开?一看就会,调试、连电脑全搞定

安卓手机里藏着个 “开发者选项”,听着挺专业,其实就是用来调试手机、优化应用性能的 —— 比如连电脑传文件、抓...