PowerShell:零基础完全学习手册(通俗理解+多表格实战)

很多新手始终分不清:PowerShell 和 CMD 到底有什么区别?到底什么时候用 PowerShell?它的核心优势是什么?

本篇手册抛弃晦涩官方话术,用通俗逻辑+大量对比表格,从零讲透 PowerShell 的定义、底层逻辑、版本区别、基础命令、脚本规则、实战场景,适合零基础入门、日常运维、Windows 自动化学习收藏。

一、通俗理解:PowerShell 是什么?

1.1 核心定义(人话版)

PowerShell 是 微软推出的 Windows 高级命令行终端 + 自动化脚本工具,是 CMD 的全面升级版,同时支持命令交互、脚本编程、系统运维、批量自动化,深度依托 .NET 框架,是 Windows 官方标准运维工具。

简单类比:

CMD:老旧简易命令行,只能执行简单文本命令,功能薄弱、无编程能力。

PowerShell :现代化终端,面向对象、支持编程、支持批量自动化、可管控 Windows 全系统资源

1.2 PowerShell 核心特点(区别于所有终端)

面向对象输出:普通终端输出纯文本,PowerShell 输出结构化对象,可直接筛选、排序、修改属性。

兼容全量 CMD 命令:CMD 能跑的命令,PowerShell 全部兼容,无缝过渡。

原生支持脚本 :后缀 .ps1,可编写循环、判断、变量、函数,实现运维自动化。

跨平台新版本:PowerShell 7 支持 Windows / Mac / Linux,不再局限 Windows。

系统权限极高:可管理进程、服务、注册表、文件、网络、系统配置。

二、PowerShell 两大版本区别(必懂,新手最易混淆)

PowerShell 分为 系统自带 Windows PowerShell 5.1跨平台 PowerShell 7+,二者完全不同,下表清晰区分:

对比维度 Windows PowerShell 5.1 PowerShell 7(Core)
内置状态 Win10/Win11 系统自带无需安装 需手动下载安装
运行程序 powershell.exe pwsh.exe
运行平台 仅 Windows 平台专属 Windows / MacOS / Linux 跨平台
底层框架 基于 .NET Framework(老旧框架) 基于 .NET Core / .NET 跨平台框架
更新迭代 停止大版本更新,仅修复漏洞 持续更新,微软主力维护版本
适用场景 Windows 本地日常运维、系统内置功能调用 跨平台脚本、服务器自动化、云运维

三、PowerShell 快速打开方式(新手速查)

打开方式 操作步骤 适用场景
运行窗口打开 Win+R 输入 powershell 回车 快速打开普通权限终端
快捷菜单打开 Win+X,选择 Windows PowerShell 系统快速调用
管理员身份打开 开始菜单搜索 PowerShell → 右键「以管理员身份运行」 修改系统配置、安装软件、修改服务必备
ISE 脚本编辑器 搜索「Windows PowerShell ISE」打开 编写、调试、运行 PS1 脚本

四、PowerShell 与 CMD 核心对比(彻底搞懂优势)

对比项 CMD PowerShell
输出形式 纯文本字符串,无法结构化处理 对象格式,可直接筛选、排序、修改属性
编程能力 极弱,仅简单批处理,无完善语法 完整编程语法:变量、循环、判断、函数、数组
命令规范 命令杂乱无章,无统一规则 统一动词+名词规范,如 Get-ChildItem、Set-Service
管道能力 文本管道,只能字符截取 对象管道,直接传递数据对象,精准处理
自动化能力 仅简单批量处理 支持复杂运维自动化、定时任务、批量管控
兼容性 仅适配老旧 Windows 兼容 CMD 命令,同时支持跨平台

五、PowerShell 命令规范(核心底层逻辑)

PowerShell 所有原生命令遵循 动词-名词 统一规则,极易记忆,告别 CMD 杂乱命令。

5.1 高频通用动词对照表

常用动词 含义 示例命令
Get 获取、查询信息 Get-Process(查看进程)
Set 设置、修改配置 Set-Service(修改服务状态)
New 新建对象/文件/任务 New-Item(新建文件/文件夹)
Remove 删除资源 Remove-Item(删除文件)
Start 启动程序/服务 Start-Service(启动服务)
Stop 停止程序/服务 Stop-Process(关闭进程)
Test 检测、验证 Test-Connection(ping 测试)

六、新手必备高频命令对照表(可直接复用)

兼容 CMD 命令,同时提供 PowerShell 原生标准命令,推荐优先使用原生命令。

功能场景 兼容 CMD 命令 PowerShell 原生标准命令
查看目录文件 dir Get-ChildItem
切换目录 cd Set-Location
新建文件/文件夹 md / copy New-Item
删除文件/文件夹 del / rd Remove-Item
查看本机进程 tasklist Get-Process
关闭进程 taskkill Stop-Process
查看网络配置 ipconfig Get-NetIPAddress
网络连通测试 ping Test-Connection
查看系统服务 无直接命令 Get-Service

七、PowerShell 脚本执行策略(新手必踩坑知识点)

Windows 默认禁止运行 PS1 脚本,目的是防止恶意脚本自动执行,新手写脚本报错基本都是这个原因。

7.1 执行策略等级对照表

策略级别 权限说明 适用场景
Restricted(默认) 禁止所有脚本运行,仅可执行单条命令 系统默认安全策略
RemoteSigned 本地编写脚本可直接运行,网络下载脚本需签名 个人学习、本地开发首选
AllSigned 所有脚本必须数字签名,无签名无法运行 企业生产环境
Unrestricted 无任何限制,所有脚本均可运行 临时测试,不推荐长期开启

7.2 常用配置命令

查看当前策略:Get-ExecutionPolicy

设置本地可运行脚本(管理员执行):Set-ExecutionPolicy RemoteSigned

八、PowerShell 三大核心优势(彻底理解为什么要学)

核心优势 通俗解释 实际价值
面向对象处理数据 不是死板文本,是结构化数据,可直接筛选、排序、取值 无需复杂文本截取,运维数据处理效率翻倍
完整自动化能力 支持变量、循环、判断、函数,可编写复杂脚本 批量处理文件、启停服务、监控系统、自动运维
全系统管控能力 深度对接 Windows 内核、.NET、注册表、服务、云资源 Windows 运维、服务器管理、云平台运维必备工具

九、PowerShell 适用场景总结

日常电脑运维:批量整理文件、清理垃圾、查看进程、关闭冗余程序

Windows 服务器运维:管理系统服务、权限、日志、定时任务

自动化脚本开发:重复性工作脚本化,解放手动操作

云运维:搭配 Azure、服务器集群实现批量管控

开发辅助:项目批量打包、文件处理、环境配置

十、新手学习路线(极简总结)

  1. 熟悉基础打开方式、区分 5.1 和 7.x 版本差异

  2. 掌握「动词-名词」命令规范,熟记高频命令

  3. 配置脚本执行策略,解决 PS1 脚本运行报错

  4. 学习变量、数组、循环、判断基础语法

  5. 练习管道筛选、数据处理、简单自动化脚本

  6. 进阶系统运维、服务器自动化、云运维场景

十一、全篇总结

  1. PowerShell 是 CMD 的现代化升级版,是 Windows 官方标准命令行与自动化工具,具备完整编程能力;

  2. 分为系统自带 5.1 版本和跨平台 7.x 版本,日常学习优先使用 5.1,跨平台开发使用 7.x;

  3. 统一「动词+名词」命令规范,记忆简单、可读性强,优于传统 CMD 杂乱命令;

  4. 默认禁止脚本运行,修改为 RemoteSigned 即可满足本地学习开发需求;

  5. 核心价值在于结构化数据处理 + 自动化运维,是 Windows 运维、开发辅助的必备技能。

相关推荐
丰锋ff2 小时前
基于 Qt 的智慧社区物业管理系统学习过程
学习
小贺儿开发2 小时前
Unity 程序员编曲花絮:汪峰《河流》细节修复
科技·学习·unity·程序员·音乐·demo·写代码
其实防守也摸鱼2 小时前
Codex破局:前端组件秒级生成的技术文章大纲
开发语言·前端·人工智能·学习·安全·web安全
wuhuhuan2 小时前
【JMeter 学习打卡 Day 5】控制流程和节奏的利器
学习·jmeter
YM52e3 小时前
鸿蒙ArkTS项目实战 - 门店陈列巡检台:完整代码与运行效果
学习·华为·harmonyos
️学习的小王3 小时前
NumPy完整学习笔记:ndarray数组详解、创建、索引切片、常用函数与运算
笔记·学习·numpy
老当益壮梁奶奶4 小时前
Linux软件编程学习笔记(二)Linux文件IO编程入门:从fopen到fgetc
linux·c语言·c++·笔记·学习
sunoo-2294 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
蒸蒸yyyyzwd4 小时前
cpp选手秋招学习笔记 day12
笔记·学习·oracle