网易首页 > 网易号 > 正文 申请入驻

Windows PowerShell 常用命令

0
分享至

Windows PowerShell 是 Windows 系统中非常重要的命令行环境和自动化脚本工具。它既可以像传统命令提示符一样操作文件、目录和程序,也可以通过对象、管道和脚本对系统进行更精细的管理。

一、PowerShell 的基本特点

PowerShell 常用命令大多采用“动词-名词”的形式,例如:

Start-Service

其中:

• Get 通常表示获取信息

• Set 通常表示设置内容

• New 通常表示新建对象

• Copy 通常表示复制对象

• Move 通常表示移动对象

• Remove 通常表示删除对象

• Start 通常表示启动

• Stop 通常表示停止

这种命名方式比传统命令更长,但语义更清楚,也更适合脚本自动化。

二、查看帮助与查找命令

1、查看命令帮助

Get-Help 命令名

例如:

Get-Help Get-ChildItem

如果希望查看更完整的帮助信息,可以使用:

Get-Help Get-ChildItem -Full

查看示例:

Get-Help Get-ChildItem -Examples

查看某个参数说明:

Get-Help Get-ChildItem -Parameter Recurse

这是学习 PowerShell 最重要的命令之一。遇到不熟悉的命令时,不必立即上网搜索,先用 Get-Help 查看语法、参数和示例。

2、查找可用命令

Get-Command

查找包含某个关键词的命令:

Get-Command *Process*

查找某个动词开头的命令:

Get-Command Get-*

查找某个模块中的命令:

Get-Command -Module Microsoft.PowerShell.Management

Get-Command 适合回答“当前系统里有哪些命令可以用”。

3、查看对象有哪些属性和方法

Get-Process | Get-Member

Get-Member 用来查看管道中对象的类型、属性和方法。

例如,Get-Process 返回的是进程对象。通过 Get-Member 可以知道进程对象包含 Name、Id、CPU、WorkingSet 等属性。后续筛选、排序和格式化都可以围绕这些属性进行。

三、目录与路径操作

1、查看当前位置

Get-Location

常用别名:

pwd

该命令用于显示当前所在目录。

2、切换目录

Set-Location 路径

例如:

Set-Location C:\Users

常用别名:

cd C:\Users

返回上一级目录:

cd ..

切换到用户目录:

cd $HOME

3、列出当前目录内容

Get-ChildItem

常用别名:

gci

列出指定目录内容:

Get-ChildItem C:\Windows

列出隐藏文件:

Get-ChildItem -Force

递归列出子目录内容:

Get-ChildItem -Recurse

只列出文件:

Get-ChildItem -File

只列出文件夹:

Get-ChildItem -Directory

4、查看路径是否存在

Test-Path 路径

例如:

Test-Path C:\Users

如果路径存在,返回 True;如果不存在,返回 False。

四、文件与文件夹操作

1、新建文件夹

New-Item -ItemType Directory -Path 文件夹名

例如:

New-Item -ItemType Directory -Path logs

2、新建文件

New-Item -ItemType File -Path 文件名

例如:

New-Item -ItemType File -Path app.log

3、复制文件

Copy-Item 源路径 目标路径

例如:

Copy-Item .\app.log .\backup\app.log

复制整个文件夹:

Copy-Item .\src .\backup\src -Recurse

4、移动文件

Move-Item 源路径 目标路径

例如:

Move-Item .\app.log .\logs\app.log

移动命令也常用于重命名文件。

5、重命名文件

Rename-Item 原文件名 新文件名

例如:

Rename-Item app.log server.log

6、删除文件

Remove-Item 文件名

例如:

Remove-Item app.log

删除文件夹及其内容:

Remove-Item .\logs -Recurse

强制删除:

Remove-Item .\logs -Recurse -Force

Remove-Item -Recurse -Force 风险较高。执行前应先确认路径是否正确,避免误删重要文件。

7、批量删除指定类型文件

Get-ChildItem -Recurse -Filter *.log | Remove-Item

这个命令会递归查找当前目录下所有 .log 文件,并通过管道传给 Remove-Item 删除。

更谨慎的做法是先查看匹配结果:

Get-ChildItem -Recurse -Filter *.log

确认无误后再执行删除。

五、读取与写入文本内容

1、查看文本文件内容

Get-Content 文件名

常用别名:

type 文件名

例如:

Get-Content .\app.log

2、查看前几行

Get-Content .\app.log -TotalCount 10

这表示查看文件前 10 行。

3、持续查看日志变化

Get-Content .\app.log -Wait

这个命令适合查看不断写入的日志文件。

4、写入文本内容

Set-Content 文件名 "文本内容"

例如:

Set-Content .\hello.txt "Hello PowerShell"

注意:Set-Content 会覆盖原有内容。

5、追加文本内容

Add-Content 文件名 "追加内容"

例如:

Add-Content .\hello.txt "New line"

Add-Content 会在文件末尾追加内容,不会覆盖原文件。

6、把命令输出保存到文件

Get-Process | Out-File process.txt

也可以使用重定向:

Get-Process > process.txt

追加输出:

Get-Process >> process.txt

六、管道、筛选与排序

PowerShell 的管道符是:|,它可以把前一个命令的输出传给后一个命令。

1、筛选对象

Get-Process | Where-Object {$_.CPU -gt 10}

其中:$_ 表示当前管道中的对象。-gt 表示 greater than,即大于。

这个命令表示筛选 CPU 使用时间大于 10 的进程。

常见比较运算符包括:

• -eq 等于

• -ne 不等于

• -gt 大于

• -ge 大于等于

• -lt 小于

• -le 小于等于

• -like 通配符匹配

• -match 正则匹配

2、选择对象属性

Get-Process | Select-Object Name, Id, CPU

这表示只显示进程的名称、进程 ID 和 CPU 属性。

只显示前 5 个结果:

Get-Process | Select-Object -First 5

只显示最后 5 个结果:

Get-Process | Select-Object -Last 5

3、排序对象

Get-Process | Sort-Object CPU

按 CPU 从高到低排序:

Get-Process | Sort-Object CPU -Descending

4、格式化输出

表格格式:

Get-Process | Format-Table Name, Id, CPU

列表格式:

Get-Process | Format-List Name, Id, CPU

需要注意:Format-Table 和 Format-List 主要用于显示结果,不适合作为管道中间步骤继续处理数据。

七、进程管理命令

1、查看进程

Get-Process

查看指定进程:

Get-Process notepad

2、启动程序

Start-Process notepad

打开某个文件:

Start-Process .\readme.txt

打开网页:

Start-Process "https://www.microsoft.com"

或者:

Start-Process "msedge.exe" -ArgumentList "https://www.microsoft.com"

3、停止进程

Stop-Process -Name notepad

根据进程 ID 停止进程:

Stop-Process -Id 1234

强制停止:

Stop-Process -Name notepad -Force

停止进程要谨慎,尤其不要随意停止系统关键进程。

4、查找占用资源较高的进程

Get-Process | Sort-Object CPU -Descending | Select-Object -First 10 Name, Id, CPU

这个命令可以查看 CPU 使用时间较高的前 10 个进程。

八、服务管理命令

1、查看系统服务

Get-Service

查看指定服务:

Get-Service wuauserv

2、筛选正在运行的服务

Get-Service | Where-Object {$_.Status -eq "Running"}

筛选已停止的服务:

Get-Service | Where-Object {$_.Status -eq "Stopped"}

3、启动服务

Start-Service 服务名

例如:

Start-Service wuauserv

4、停止服务

Stop-Service 服务名

例如:

Stop-Service wuauserv

某些服务需要管理员权限才能启动或停止。对系统服务操作前,应确认服务用途,避免影响系统正常运行。

5、重启服务

Restart-Service 服务名

Restart-Service spooler

九、网络检查命令

1、测试网络连通性

Test-Connection 地址

例如:

Test-Connection www.baidu.com

这类似于传统的 ping 命令。

2、测试端口是否可连接

Test-NetConnection 地址 -Port 端口号

例如:

Test-NetConnection www.example.com -Port 443

这适合检查某个服务器端口是否可访问。

3、查看 IP 配置

Get-NetIPConfiguration

该命令可以查看网卡、IP 地址、网关、DNS 等信息。

4、查看网络连接

Get-NetTCPConnection

筛选某个端口:

Get-NetTCPConnection -LocalPort 80

十、系统信息命令

1、查看计算机基本信息

Get-ComputerInfo

这个命令会输出大量系统信息,包括操作系统、版本、硬件、BIOS、内存等。

2、查看操作系统信息

Get-CimInstance Win32_OperatingSystem

3、查看处理器信息

Get-CimInstance Win32_Processor

4、查看内存信息

Get-CimInstance Win32_PhysicalMemory

5、查看磁盘信息

Get-Volume

查看物理磁盘:

Get-Disk

查看分区:

Get-Partition

这些命令适合系统检查、运维巡检和故障排查。

十一、环境变量命令

1、查看所有环境变量

Get-ChildItem Env:

PowerShell 中的环境变量可以通过 Env: 驱动器访问。

2、查看指定环境变量

$env:PATH

查看用户目录:

$env:USERPROFILE

查看当前用户名:

$env:USERNAME

3、临时设置环境变量

$env:NODE_ENV = "development"

这种方式只对当前 PowerShell 会话有效。关闭终端后,设置会失效。

4、删除当前会话中的环境变量

Remove-Item Env:NODE_ENV

如果要永久设置环境变量,通常需要使用系统设置界面,或使用专门命令写入用户级、系统级环境变量。

十二、压缩与解压缩命令

1、压缩文件夹

Compress-Archive -Path .\src -DestinationPath .\src.zip

2、压缩多个文件

Compress-Archive -Path .\a.txt, .\b.txt -DestinationPath .\files.zip

3、解压缩文件

Expand-Archive -Path .\src.zip -DestinationPath .\output

4、覆盖解压

Expand-Archive -Path .\src.zip -DestinationPath .\output -Force

压缩命令适合备份文件、打包日志、传输项目资料等场景。

十三、执行脚本

PowerShell 脚本文件通常以 .ps1 结尾。

1、运行当前目录下的脚本

.\script.ps1

注意,当前目录下的脚本通常需要写成 .\script.ps1,不能只写 script.ps1。

这是因为 PowerShell 默认不会自动从当前目录查找可执行脚本,从而减少误执行风险。

2、查看当前执行策略

Get-ExecutionPolicy

查看所有作用域的执行策略:

Get-ExecutionPolicy -List

3、设置当前用户执行策略

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

RemoteSigned 通常表示:本地创建的脚本可以运行,从网络下载的脚本需要可信签名。

执行策略是 PowerShell 的安全机制之一,但它不是完整的安全沙箱。不要运行来源不明的脚本。

4、临时绕过执行策略运行脚本

powershell -ExecutionPolicy Bypass -File .\script.ps1

这类命令应谨慎使用,只适合明确知道脚本来源和内容的情况。

十四、别名与命令习惯

PowerShell 为了兼容用户习惯,提供了许多别名。

常见别名包括:

• cd Set-Location

• pwd Get-Location

• dir Get-ChildItem

• ls Get-ChildItem

• cat Get-Content

• type Get-Content

• copy Copy-Item

• move Move-Item

• del Remove-Item

• rm Remove-Item

• cls Clear-Host

查看某个别名对应的真实命令:

Get-Alias ls

查看所有别名:

Get-Alias

在交互式操作中,使用 ls、cd、cat 很方便。但在正式脚本中,更建议使用完整命令名,例如 Get-ChildItem、Set-Location、Get-Content。完整命令虽然更长,但可读性更好,也更不容易产生歧义。

十五、常见完整操作流程

1、查找并删除日志文件

先查看:

Get-ChildItem -Recurse -Filter *.log

确认后删除:

Get-ChildItem -Recurse -Filter *.log | Remove-Item

更谨慎地模拟执行:

Get-ChildItem -Recurse -Filter *.log | Remove-Item -WhatIf

-WhatIf 可以预览命令将要执行的操作,适合删除、移动、修改系统资源前使用。

2、查看占用资源较高的进程

Select-Object -First 10 Name, Id, CPU

这条命令体现了 PowerShell 管道的典型用法:获取进程,按 CPU 排序,选出前 10 个,并只显示关键字段。

3、查看正在运行的服务

Select-Object Name, DisplayName, Status

4、把系统信息导出为文件

Get-ComputerInfo | Out-File .\computer-info.txt

5、检查某个端口是否可访问

Test-NetConnection 127.0.0.1 -Port 3000

这在前端、后端和本地服务开发中非常常用。例如检查本地 3000 端口服务是否正在监听。

十六、容易出错的地方

1、不要误删路径

执行删除命令前,尤其是使用 -Recurse 和 -Force 时,应先检查路径:

Get-ChildItem 路径

必要时先使用:

Remove-Item 路径 -WhatIf

确认无误后再真正执行。

2、不要把格式化命令放在管道中间

例如:

Get-Process | Format-Table | Where-Object {$_.Name -like "node*"}

这种写法通常不合适,因为 Format-Table 会把对象转换为用于显示的格式化对象,不再适合继续筛选。

更好的写法是:

Format-Table Name, Id, CPU

筛选、排序、选择应放在前面,格式化输出应放在最后。

3、不要盲目运行网上复制的脚本

PowerShell 可以操作文件、服务、注册表、网络和系统配置。来源不明的脚本可能造成数据删除、配置篡改或安全风险。

运行脚本前应先查看内容:

Get-Content .\script.ps1

4、注意管理员权限

有些命令需要管理员权限,例如修改系统服务、写入系统目录、调整执行策略、修改系统级配置等。

如果命令提示权限不足,可以尝试以管理员身份打开 PowerShell,但不要在不理解命令作用的情况下使用管理员权限执行脚本。

5、注意 PowerShell 与 CMD 命令差异

PowerShell 可以运行许多传统 CMD 命令,但两者语法并不完全相同。

例如,PowerShell 中变量使用 $,路径可以通过对象处理,管道传递的是对象,而不是单纯文本。

因此,在 PowerShell 中编写脚本时,最好优先使用 PowerShell 原生命令。

小结

Windows PowerShell 的核心价值不只是执行单个命令,而是用对象、管道和脚本把多个操作组合成自动化流程。掌握目录操作、文件处理、文本读写、管道筛选、进程服务管理、网络检查和脚本执行后,就可以完成大多数 Windows 日常管理与开发辅助任务。


点赞有美意,赞赏是鼓励

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
朗尼克:很失望世界杯征程在此结束,2-0之后就变得很困难了

朗尼克:很失望世界杯征程在此结束,2-0之后就变得很困难了

懂球帝
2026-07-03 05:50:25
“台独”的末日到了,中国新法最具杀伤力,西方多国呼吁立即废除

“台独”的末日到了,中国新法最具杀伤力,西方多国呼吁立即废除

冰语历史
2026-07-02 17:40:28
5年合同,均薪1630万美元!火箭队留下年轻锋线,这操作很不错啊

5年合同,均薪1630万美元!火箭队留下年轻锋线,这操作很不错啊

Haviven聊球
2026-07-03 11:55:11
名人堂教头转型助教!比利・多诺万加盟马刺,辅佐文班冲总冠军

名人堂教头转型助教!比利・多诺万加盟马刺,辅佐文班冲总冠军

夜白侃球
2026-07-03 12:02:41
穆里尼奥赚大了!皇马 6000 万新援一战封神,世界杯打爆强敌

穆里尼奥赚大了!皇马 6000 万新援一战封神,世界杯打爆强敌

奶盖熊本熊
2026-07-03 05:39:34
朱祁钰,一个被严重低估的帝王,没有他,南明将提前二百年到来

朱祁钰,一个被严重低估的帝王,没有他,南明将提前二百年到来

云霄纪史观
2026-07-03 01:12:13
诺兰DEI新片《奥德赛》被骂惨了!预告创最差纪录

诺兰DEI新片《奥德赛》被骂惨了!预告创最差纪录

3DM游戏
2026-07-03 09:16:46
千万赞助款刚到位,董路第一件事:拿一百万分给月薪三千的老兄弟

千万赞助款刚到位,董路第一件事:拿一百万分给月薪三千的老兄弟

青梅侃史啊
2026-07-03 07:11:49
再见了!冯小刚,《抓特务》票房惨败,属于冯小刚的时代结束了

再见了!冯小刚,《抓特务》票房惨败,属于冯小刚的时代结束了

翰飞观事
2026-07-01 14:52:44
WTT美国大满贯太残酷了:随着A勒布伦3-0,国乒男单已全军覆没

WTT美国大满贯太残酷了:随着A勒布伦3-0,国乒男单已全军覆没

俯身冲顶
2026-07-03 11:38:02
霍震霆表态,坐实霍启山婚事!女方辱华再添实锤,整个霍家被抵制

霍震霆表态,坐实霍启山婚事!女方辱华再添实锤,整个霍家被抵制

小鋭有话说
2026-07-02 12:58:43
在莫斯科上空实战测试!俄罗斯国防部:拦截1枚乌克兰弹道导弹

在莫斯科上空实战测试!俄罗斯国防部:拦截1枚乌克兰弹道导弹

鹰眼Defence
2026-07-02 16:56:53
二手平台出售超高价玩具人偶,标有身高体重性格等,平台:不涉及儿童贩卖

二手平台出售超高价玩具人偶,标有身高体重性格等,平台:不涉及儿童贩卖

西游日记
2026-07-01 22:30:59
罗马诺爆料:热刺一笔已谈妥的转会彻底告吹!

罗马诺爆料:热刺一笔已谈妥的转会彻底告吹!

夜白侃球
2026-07-03 10:50:48
突然崩了!一大群网友已炸锅:不会办公了……

突然崩了!一大群网友已炸锅:不会办公了……

极目新闻
2026-07-02 17:59:52
太阳报:荷兰队内部对阿森纳安排廷贝尔出战欧冠决赛感到不满

太阳报:荷兰队内部对阿森纳安排廷贝尔出战欧冠决赛感到不满

懂球帝
2026-07-03 09:46:27
京圈五次垮塌:一不尊重人二不尊重戏,只信人脉和“钞能力”

京圈五次垮塌:一不尊重人二不尊重戏,只信人脉和“钞能力”

道术意义
2026-07-01 07:20:12
伊藤鹰眼挑战失败次局崩盘!18岁张本美和关键暂停妙手 2项仍不败

伊藤鹰眼挑战失败次局崩盘!18岁张本美和关键暂停妙手 2项仍不败

颜小白的篮球梦
2026-07-03 11:02:54
海运成本再添变量,船只通过霍尔木兹海峡或需向伊朗阿曼缴纳服务费|周期早参

海运成本再添变量,船只通过霍尔木兹海峡或需向伊朗阿曼缴纳服务费|周期早参

每日经济新闻
2026-07-03 09:48:08
Papi酱把公司全关了,只留七个人

Papi酱把公司全关了,只留七个人

卢松松
2026-06-30 15:54:25
2026-07-03 12:27:00
MediaTea
MediaTea
专业的数字媒体、新媒体技术
1925文章数 81关注度
往期回顾 全部

科技要闻

特斯拉交付超预期7.4万辆,股价却大跌7.5%

头条要闻

牛弹琴:印度哥哥迎来日本小妹妹 这场外交好戏不简单

头条要闻

牛弹琴:印度哥哥迎来日本小妹妹 这场外交好戏不简单

体育要闻

韩国人,为什么恨透了洪明甫?

娱乐要闻

黄晓明深夜约会美女,分手原因曝光

财经要闻

AI“鬼故事”不断,市场开始重估?

汽车要闻

极氪9X五座版官宣,如图!

态度原创

本地
房产
健康
数码
公开课

本地新闻

这场穿越酉阳的光影之旅,张张都是壁纸!

房产要闻

独家猛料!融创海南大变天,项目重启,大量招人!

这4类消化病患者 吃粘食管住嘴

数码要闻

AMD奇怪显卡现身!标称RX 7900 XTX实则规格对标GRE

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版