PowerShell 删除文件夹
PowerShell 中的文件夹删除操作会从给定位置删除文件夹,无论它是本地路径还是共享路径。
本文重点介绍使用 PowerShell 删除文件夹的不同方法。
在 PowerShell 中使用 Remove-item
Cmdlet 删除文件夹
可以使用 Remove-Item
cmdlet 删除一个或多个对象。
我们可以使用两种不同的语法进行删除。但需要注意的是,这两者可以单独使用,但不能组合使用。
- 语法 1
Remove-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String[]>]
[<CommonParameters>]
- 语法 2
Remove-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Recurse]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Stream <String[]>]
[<CommonParameters>]
-Path
和 -Literalpath
不能在相同的语法中使用。
Remove-item
参数
下面给出了最常用参数的名称和描述。
名称 | 说明 |
---|---|
-Path |
指定要移除的东西的位置。通配符的使用没有限制。 |
-LiteralPath |
指定到一个或多个位置的路径 |
-Confirm |
运行 cmdlet 前会提示确认 |
-Exclude |
cmdlet 在操作期间排除的项目 |
-Credential |
任何 PowerShell 安装的提供程序都不支持此参数。在使用此 cmdlet 时,使用 Invoke-Command 模拟其他用户或提升你的权限。 |
-Filter |
过滤以验证路径参数 |
-Force |
强制删除无法以其他方式修改的对象,例如私有或只读文件/别名或变量。 |
-Include |
cmdlet 在操作期间包含的项目 |
-Recurse |
此 cmdlet 丢弃给定位置中的对象以及所有位置的子项。 |
-Stream |
Stream 参数是由 FileSystem 提供程序添加到 Remove-Item 的动态参数。此设置仅适用于具有文件系统的驱动器。 |
-WhatIf |
显示执行 cmdlet 时会发生什么。 |
让我们看一些示例以及不同的语法用法,
示例 1:
在这里,我们将使用下面提到的命令删除 test1
文件夹,最后,你可以看到该文件夹将被删除。
Remove-Item 'D:\temp\Test1'
示例 2:
我们将递归删除文件夹 test2。PowerShell 在前面的示例中检查目录是否为空。在这种情况下,它只会删除该文件夹。
Remove-Item 'D:\temp\test2' -Recurse
示例 3:在 -RemoveItem
中使用 -LiteralPath
-LiteralPath
与 -Force
和 -Recurse
参数一起使用。因此,它会在没有任何确认提示的情况下强制删除项目以及给定路径中的文件夹。
Remove-Item -LiteralPath "foldertodelete" -Force -Recurse
示例 4:Remove-item
作为管道
我们首先使用 Get-ChildItem 来检索文件夹和文件,然后我们使用 Remove-Item
来管道上一个命令的结果。
Get-ChildItem C:\Temp\TestFolder\ | Remove-Item -Recurse -Force -Verbose
这里唯一的问题是它只删除文件夹的内容,而不是文件夹本身;因此,必须添加其他代码片段才能删除该文件夹。
在 PowerShell 中使用命令提示符删除文件夹
大多数命令行用户将使用 rmdir
命令来删除或删除文件夹。语法是 rmdir
以及文件夹路径,如下所示。
rmdir C:\Temp\TestFolder
在 PowerShell 中使用 FileSystem
对象方法删除文件夹
PowerShell 中提供了用于删除文件夹的不同选项。其中之一是文件系统对象方法。此过程有两个阶段。第一步,我们将构造一个文件系统对象;接下来,在第二步中,我们将使用 DeleteFolder()
函数来销毁关联对象的文件夹。
所以要做到这一点,首先创建一个 test.ps1
文件,然后添加下面给出的以下命令。
$object = New-Object -ComObject Scripting.FileSystemObject
$object.DeleteFolder("C:\Temp\TestFolder")
最后,执行 test.ps1
文件,它将删除我们想要的文件夹。
在 PowerShell 中使用 .Net 类删除文件夹
在 PowerShell 中,.NET 框架使用 System.IO.Directory
类和 Delete()
方法来删除文件夹。如果提供的文件夹不为空,此操作将抛出异常:
> [System.IO.Directory]::Delete("C:\Temp\TestFolder")
要删除此非空文件夹,请使用 Delete()
函数中的 $true
选项:
System.IO.Directory]::Delete("C:\Temp\TestFolder", $true)
相关文章
在 PowerShell 中提取子字符串
发布时间:2024/02/07 浏览次数:162 分类:编程语言
-
本文将讨论如何使用 PowerShell 的字符串库有效地提取字符串中的子字符串。作为 Windows 管理员的一个典型场景是找出一种方法来在称为子字符串的字符串中查找特定的文本片段
在 PowerShell 中连接字符串
发布时间:2024/02/07 浏览次数:174 分类:编程语言
-
本文将展示我们可以在 PowerShell 中使用的所有可能的方法来连接字符串和变量。PowerShell 使用不同的运算符和函数来实现字符串连接。
在 PowerShell 中将字符串转换为整数
发布时间:2024/02/07 浏览次数:131 分类:编程语言
-
本教程将教你在 PowerShell 中将字符串转换为整数。在 PowerShell 中使用 [int] 将字符串转换为整数
在 PowerShell 中将字符串拆分为单独的变量
发布时间:2024/02/07 浏览次数:140 分类:编程语言
-
本教程将介绍在 PowerShell 中将字符串拆分为单独的变量。字符串是用于表示文本的字符序列。它是 PowerShell 中常见的数据类型之一。
在 PowerShell 中获取变量的字符串长度
发布时间:2024/02/07 浏览次数:113 分类:编程语言
-
本教程将教你在 PowerShell 中获取变量的字符串长度。字符串是 PowerShell 中最常用的数据类型之一;它包含字符或文本的序列。你可以使用单引号或双引号定义字符串。
在 PowerShell 中查找子字符串的位置
发布时间:2024/02/07 浏览次数:84 分类:编程语言
-
本教程将教你在 PowerShell 中查找子字符串的位置。PowerShell 中的字符串和子字符串 字符串是 PowerShell 中使用的常见数据类型。
在 PowerShell 中比较两个字符串对象的内容
发布时间:2024/02/07 浏览次数:65 分类:编程语言
-
本教程将教你比较 PowerShell 中两个字符串对象的内容。字符串是 PowerShell 中最常用的数据类型之一。
使用 PowerShell 替换文件中的文本
发布时间:2024/02/07 浏览次数:118 分类:编程语言
-
本教程将教你使用 PowerShell 替换文件中每个出现的字符串。PowerShell 是一个强大的工具,可以执行不同的文件和文件夹操作。
PowerShell 中加入路径以将两个以上的字符串组合成一个文件路径
发布时间:2024/02/07 浏览次数:84 分类:编程语言
-
本教程将教你使用 Join-Path 将两个以上的字符串组合成一个文件路径。