PowerShell Remove-Item
最后修改:2025 年 2 月 15 日
在本文中,我们将介绍 PowerShell 中的 Remove-Item cmdlet。此 cmdlet 可从各种提供程序删除文件、文件夹、注册表项和其他项。
Remove-Item 基础知识
Remove-Item cmdlet 从 PowerShell 提供程序位置删除一个或多个项。它适用于文件系统、注册表、证书存储和其他提供程序。该 cmdlet 可以删除文件、目录、注册表项和变量。它支持用于模式匹配的通配符,并具有安全功能。
Remove-Item 基本用法
使用 Remove-Item 的最简单方法是指定文件路径。这将永久删除指定的文件。默认情况下,cmdlet 不会请求确认。请小心,因为删除的文件不会进入回收站。
Remove-Item -Path "C:\temp\oldfile.txt"
此命令删除 C:\temp 目录中的文件 "oldfile.txt"。如果文件不存在,PowerShell 将显示错误消息。
删除目录
要删除目录,请指定目录路径。默认情况下,cmdlet 仅删除空目录。使用 -Recurse 参数删除包含内容的目录。这是一项强大的操作,应谨慎使用。
Remove-Item -Path "C:\temp\oldfolder" -Recurse
此命令删除 "oldfolder" 目录及其所有内容。-Recurse 参数允许删除非空目录。
使用通配符进行模式匹配
Remove-Item cmdlet 支持用于模式匹配的通配符。星号 (*) 匹配任何字符,而问号 (?) 匹配单个字符。这允许批量删除与模式匹配的文件。
Remove-Item -Path "C:\temp\*.bak"
此命令删除 C:\temp 中所有扩展名为 .bak 的文件。通配符 (*) 匹配扩展名前的任何文件名。
使用 -WhatIf 参数
-WhatIf 参数显示实际删除任何内容之前会发生什么。这有助于在执行命令之前测试命令。它通过显示命令的影响来帮助防止意外删除。
Remove-Item -Path "C:\temp\*" -Recurse -WhatIf
此命令显示如果命令在没有 -WhatIf 的情况下运行会删除什么。输出列出了将被删除的所有文件和文件夹。
使用 -Confirm 进行交互式删除
-Confirm 参数在每次删除前提示确认。这为删除重要文件时增加了一层安全保障。PowerShell 会显示每个项目并要求确认后再继续。
Remove-Item -Path "C:\temp\important.txt" -Confirm
此命令在删除 important.txt 之前提示确认。您必须回答“Y”或“A”才能继续删除。
删除只读文件
默认情况下,Remove-Item 不会删除只读文件。使用 -Force 参数可以覆盖此行为。此参数还会抑制确认提示,并可以删除隐藏文件。
Remove-Item -Path "C:\temp\readonly.txt" -Force
此命令强制删除 readonly.txt,而不考虑其只读属性。请谨慎使用 -Force,因为它会绕过保护。
删除注册表项
Remove-Item 在处理注册表提供程序时可以删除注册表项。指定完整的注册表路径,并对包含子项的项使用 -Recurse。在进行任何更改之前,请务必备份注册表。
Remove-Item -Path "HKLM:\Software\MyOldApp" -Recurse
此命令删除 MyOldApp 注册表项及其所有子项。注册表操作需要提升的权限(以管理员身份运行)。
来源
在本文中,我们介绍了 PowerShell 中的 Remove-Item cmdlet。
作者
列出 所有 PowerShell 教程。