PowerShell 命令
PowerShell 常用命令速查,文件/系统/进程/网络/注册表,一键复制
共 47 个脚本
列出目录内容(ls)
Get-ChildItem 列出指定路径下的文件与子目录,等价于 Linux 的 ls 或 CMD 的 dir。
创建文件或目录
New-Item 用于创建文件、目录及其他项类型,-ItemType 决定创建的对象类型。
复制文件或目录
Copy-Item 复制文件与目录,-Recurse 用于递归复制整个目录树。
移动或重命名
Move-Item 移动文件到新位置,也常用于重命名,原位置的文件将被移除。
删除文件或目录(rm)
Remove-Item 删除文件或目录。-Recurse 递归删除目录,-Force 强制删除只读或隐藏项,两者合用时非常危险。
搜索文件
结合 Get-ChildItem 与 -Recurse、-Filter、-Include 递归搜索文件,类似 Linux 的 find。
文件内容搜索(grep)
Select-String 在文件内容中搜索文本或正则,类似 Linux 的 grep,支持递归与上下文显示。
压缩与解压(zip)
Compress-Archive 将文件或目录打包成 zip,Expand-Archive 解压 zip 包。
计算文件哈希
Get-FileHash 计算文件的哈希值,默认 SHA256,常用于校验文件完整性。
查看系统版本信息
Get-ComputerInfo 返回操作系统、硬件、BIOS 等综合信息(仅 Windows PowerShell 5.1+)。
查看磁盘空间
Get-PSDrive 列出所有驱动器(含文件系统与注册表等),显示已用与可用空间。
查看 CPU 与内存占用
Get-Process 配合 Sort-Object 与 Select-Object 查看资源占用最高的进程。
查看与设置环境变量
通过 $env: 读写当前会话的环境变量,Get-ChildItem Env: 列出全部,.NET 方法可持久化。
查看已安装程序
通过 WMI/CIM 查询系统中已安装的软件列表,可导出用于审计。
查看内存与运行时间
Get-CimInstance 查询操作系统与内存总量、上次启动时间,换算出已运行时长。
查看进程列表
Get-Process 列出当前系统运行的进程,可按名称或 ID 过滤。
终止进程
Stop-Process 通过 PID 或名称结束进程,-Force 强制结束无响应进程。
查看服务列表
Get-Service 列出系统服务及其状态(Running/Stopped)与启动类型。
启动/停止/重启服务
Start-Service、Stop-Service、Restart-Service 控制服务运行,通常需要管理员权限。
查看开机启动项
查询注册表与启动文件夹中的开机自启程序,排查随系统启动的项目。
查看 IP 地址
Get-NetIPAddress 列出所有网卡的 IPv4/IPv6 地址,可过滤地址族与状态。
测试连通性(ping)
Test-Connection 等价于 ping,发送 ICMP 包测试主机可达性。
测试端口连通性
Test-NetConnection 测试指定主机的端口是否可达,并显示路由跳数(仅 Windows)。
下载文件(curl)
Invoke-WebRequest 下载文件或发起 HTTP 请求,类似 curl。-OutFile 保存到磁盘。
DNS 解析
Resolve-DnsName 查询域名的 DNS 记录,支持指定记录类型与 DNS 服务器。
调用 REST API
Invoke-RestMethod 调用 RESTful API 并自动将 JSON/XML 响应解析为 PowerShell 对象。
查看当前用户
通过 $env:USERNAME 或 .NET 获取当前登录用户名与域名。
查看本地用户列表
Get-LocalUser 列出系统中的本地账户及其启用状态(仅 Windows 10/Server 2016+)。
检查管理员权限
检测当前会话是否以管理员身份运行,常用于脚本开头做权限校验。
查看文件权限
Get-Acl 获取文件或目录的访问控制列表(ACL),显示哪些用户/组有何种权限。
修改文件权限
Set-Acl 设置文件或目录的访问控制列表,可添加或修改访问规则。
以管理员运行程序
Start-Process -Verb RunAs 触发 UAC 提权,以管理员身份启动新进程。
创建本地用户并加入组
New-LocalUser 创建本地账户,Add-LocalGroupMember 将用户加入指定组(需管理员)。
查看注册表项
Get-ItemProperty 读取注册表键值,注册表通过 HKLM:、HKCU: 等驱动器访问。
修改注册表值
Set-ItemProperty 修改或新建注册表键值。注册表直接影响系统行为,修改前务必备份。
新建注册表项
New-Item 与 New-ItemProperty 在注册表中创建新的键与值。-Force 可递归创建父项。
删除注册表值或项
Remove-ItemProperty 删除单个值,Remove-Item 删除整个注册表项(含子项)。
常用注册表路径速查
系统管理中最常访问的注册表路径,涵盖启动项、卸载信息、系统策略等。
设置脚本执行策略
Set-ExecutionPolicy 控制 PowerShell 运行脚本的权限。RemoteSigned 是较安全且常用的策略。
查看命令帮助
Get-Help 查看任意 cmdlet 的用法、参数与示例,-Online 打开在线版最新文档。
管道符与对象流
PowerShell 管道传递的是 .NET 对象而非纯文本,后续 cmdlet 可直接访问对象属性。
过滤对象(Where-Object)
Where-Object 按条件过滤管道中的对象,? 是其别名,支持简化与脚本块两种语法。
循环处理(ForEach-Object)
ForEach-Object 对管道中每个对象执行操作,% 是其别名,$_/$PSItem 代表当前对象。
导出 CSV 文件
Export-Csv 将对象集合导出为 CSV 文件,-NoTypeInformation 去除类型头信息。
解析与生成 JSON
ConvertFrom-Json 将 JSON 字符串转为对象,ConvertTo-Json 将对象序列化为 JSON。
字符串操作
PowerShell 字符串常用操作:格式化、分割、替换、连接与多行字符串。
查看与管理别名
Get-Alias 查看 cmdlet 的别名,Set-Alias 与 New-Alias 创建自定义别名。