PowerShell 命令速查表 - PowerShell 常用命令大全
Windows 系统管理与自动化必备的 PowerShell 命令都在这里了,从文件操作到远程管理,按场景分类整理,直接复制使用。
返回 系统与运维基础命令 5
Get-Command列出所有可用的 PowerShell 命令(cmdlet、函数、别名)
Get-Help Get-Process查看命令帮助文档,加 -Detailed 查看更多详情
Get-Member查看管道中对象的属性和方法
Get-Verb列出所有 PowerShell 批准的动词
Get-Alias列出所有命令别名
文件与目录 8
Get-ChildItem列出目录内容,类似 ls/dir
Set-Location ..切换目录,类似 cd
New-Item -ItemType Directory -Path C:\NewDir创建新目录或文件
Copy-Item src.txt dst.txt复制文件或目录,类似 cp
Move-Item src.txt dst.txt移动或重命名文件,类似 mv
Remove-Item file.txt删除文件或目录,类似 rm
Rename-Item old.txt new.txt重命名文件或目录
Test-Path C:\path检查路径是否存在,返回 True/False
内容操作 8
Get-Content file.txt读取文件内容,类似 cat
Set-Content file.txt "text"写入文件内容(覆盖)
Add-Content file.txt "text"追加内容到文件
Out-File output.txt将输出写入文件
Export-Csv data.csv -NoTypeInformation导出对象为 CSV 文件
Import-Csv data.csv从 CSV 文件导入对象
ConvertTo-Json将对象转换为 JSON 格式
ConvertFrom-Json从 JSON 字符串创建对象
管道与筛选 6
Where-Object { $_.Name -eq "svchost" }筛选对象,类似 grep,可简写为 where
Select-Object -First 10 Name,Id选择对象属性或前 N 个,可简写为 select
Sort-Object Name -Descending对对象排序,可简写为 sort
Group-Object Status按属性分组统计
Measure-Object -Sum -Average计算数值统计信息(总和、平均值等)
ForEach-Object { $_ * 2 }对管道中每个对象执行操作,可简写为 foreach
进程与服务 9
Get-Process列出所有正在运行的进程,类似 ps
Get-Process -Name "chrome"按名称查找进程
Stop-Process -Name "notepad"停止指定进程,类似 kill
Start-Process notepad.exe启动新进程
Get-Service列出所有 Windows 服务
Start-Service Spooler启动服务
Stop-Service Spooler停止服务
Restart-Service Spooler重启服务
Set-Service Spooler -StartupType Automatic设置服务启动类型(自动/手动/禁用)
网络与远程 6
Test-Connection 8.8.8.8测试网络连接,类似 ping
Test-NetConnection google.com -Port 443高级网络诊断,测试端口连通性
Invoke-WebRequest -Uri https://api.example.com发送 HTTP/HTTPS 请求,类似 curl
Invoke-RestMethod -Uri https://api.example.com发送 REST API 请求,自动解析 JSON/XML
Enter-PSSession -ComputerName Server01进入远程 PowerShell 会话,类似 SSH
Invoke-Command -ComputerName Server01 -ScriptBlock { Get-Process }在远程机器上执行命令
脚本编写 8
$name = "World"定义变量,用 $ 前缀
$array = 1,2,3; $array[0]数组定义和索引访问
$hash = @{ Name = "Tom"; Age = 30 }哈希表(字典)定义
if ($val -gt 10) { "big" } else { "small" }条件判断,-gt 大于/-lt 小于/-eq 等于
switch ($val) { 1 { "one" } default { "?" } }Switch 多分支判断
foreach ($item in $items) { $item }遍历数组或集合
function Say-Hello { param($name) "Hello $name" }定义函数,支持参数
try { 1/0 } catch { "error: $_" } finally { "done" }异常处理 try/catch/finally
系统管理 8
Get-Date获取当前日期时间
Set-Date "2026-01-01"设置系统日期时间
Get-WmiObject Win32_Processor通过 WMI 查询系统信息(CPU)
Get-CimInstance Win32_LogicalDisk通过 CIM 查询磁盘信息(推荐代替 WMI)
Format-Table Name,Id -AutoSize表格格式输出,自动调整列宽
Format-List Name,Id列表格式输出,每个属性一行
Format-Wide Name -Column 4宽格式输出,多列显示
Get-EventLog -LogName System -Newest 10查看系统事件日志(最新 10 条)
💡 提示
- PowerShell 命令采用"动词-名词"命名规范,如 Get-Process、Stop-Service
- 使用 Get-Command 查找所有可用命令,Get-Help 查看帮助
- 管道传递的是对象而不是文本,用 Get-Member 查看对象属性和方法
- 变量用 $ 前缀,如 $var = "hello"
- 使用 $profile 文件自定义 PowerShell 环境,类似 .bashrc