PowerShell 是一种跨平台的任务自动化解决方案,集成了命令行 shell、脚本语言和配置管理框架,可在 Windows、Linux 和 macOS 上运行。它不仅能执行图形界面(GUI)应用程序的所有操作,还能通过脚本实现更高效的自动化管理,是系统管理和任务自动化的强大工具。
什么是 PowerShell 命令?
cmdlet 的命名规则
PowerShell 采用“动词-名词”(Verb-Noun)的结构化命名方式,让命令含义直观易懂,降低学习成本:
- 动词(Verb):表示 cmdlet 执行的具体操作(如获取、启动、复制等);
- 名词(Noun):表示操作的对象(如进程、服务、文件等)。
例如:Get-Command
是用于获取系统中已注册的所有 cmdlet 的命令,其中“Get”是动词(获取),“Command”是名词(命令)。
PowerShell 基本命令(入门必备)
对于初学者,掌握以下基础 cmdlet 能快速入门 PowerShell,逐步熟悉其功能和灵活性:
1. 获取帮助:
Get-Help
是 PowerShell 集成帮助系统的核心命令,用于查询其他命令、概念、函数的详细信息(包括语法、示例、别名等)。
常用用法:
- 查询指定 cmdlet 的本地帮助。示例:查看
Get-Process
的语法和概要Get-Help Get-Process
- 获取官方在线文档。示例:查看
Get-Content
的微软官方在线帮助(含最新更新)Get-Help Get-Content -online
2. 查看进程:
Get-Process
用于检索并显示系统中所有活动进程及其标识符(ID),可替代 Windows 任务管理器查看、停止或重启进程。
常用用法:
- 列出所有正在运行的进程
Get-Process
- 停止指定进程(结合管道
|
和Stop-Process
)。示例:停止 PID 为 20496 的进程(如 GameBar)Get-Process -ID 20496 | Stop-Process
提示:需先通过
Get-Process
找到目标进程的 PID,再替换命令中的“20496”。
3. 启动进程:
Start-Process
用于在本地计算机启动一个或多个进程,支持通过参数设置启动权限(如管理员身份)、工作目录等。
常用用法:
- 启动基础进程。示例:启动记事本(notepad)
Start-Process notepad
- 以管理员身份启动进程。示例:以管理员权限打开记事本
Start-Process -FilePath "notepad" -Verb runAs
4. 查看所有命令:
Get-Command
用于列出计算机上已安装的所有 PowerShell 命令(包括 cmdlet、函数、脚本等),支持通过参数筛选特定命令。
常用用法:
- 查看所有可用命令
Get-Command
- 筛选特定命令。示例:查找名称以“A”开头的 cmdlet
Get-Command -Name A* -CommandType cmdlet
- 查看更多示例
Get-Help Get-Command -Examples
5. 查看服务:
Get-Service
用于查看计算机上的服务列表及状态(默认显示所有已停止和运行中的服务),支持按名称、状态筛选目标服务。
常用用法:
- 查看名称以“Win”开头的所有服务
Get-Service -Name "Win*"
- 查看所有正在运行的服务(结合
Where-Object
)Get-Service | Where-Object { $_.Status -eq "Running" }
6. 浏览文件/文件夹:
Get-ChildItem
用于查找和列出目录中的文件、文件夹及其内容,无需打开文件资源管理器即可快速导航,支持递归查询子目录。
常用用法:
- 查看 C 盘根目录的顶级文件夹/文件
Get-ChildItem "C:\"
- 查看指定文件夹的所有内容(包括子文件夹)
Get-ChildItem -Path "C:\Program Files"
- 递归查看文件夹所有文件并显示完整路径
Get-ChildItem -Path "C:\Program Files\Folder_Name" -Recurse | Select FullName
提示:将“Folder_Name”替换为实际文件夹名称,即可查看该文件夹下所有文件的完整路径。
7. 复制文件/文件夹:
Copy-Item
用于复制文件、文件夹及其内容到指定目录,关键参数 -Recurse
可确保复制所有子目录和文件(避免仅复制顶级内容)。
常用用法:
- 复制文件夹及其所有内容
示例:将“E:\Folder1”及其子内容复制到“E:\Folder2”Copy-Item "E:\Folder1" -Destination "E:\Folder2" -Recurse
重要提示:若省略 -Recurse
参数,PowerShell 仅复制“Folder1”本身(或顶级文件),不会复制子目录中的内容。
总结
PowerShell 的核心价值在于“跨平台”和“自动化”,而掌握基础 cmdlet 是入门的关键。通过本文的 Get-Help
(查帮助)、Get-Process
(管进程)、Get-ChildItem
(览文件)等命令,您可以快速实现日常系统操作;后续再结合脚本编写,即可逐步解锁 PowerShell 的自动化能力,提升工作效率。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...