使用排除从文件夹结构中删除文件
Delete files from folder structure with exclude
目前我正在尝试删除文件夹结构中的文件
root
|
|__subfolder1 (includes files)
|
|__subfolder2 (includes files)
|
etc
脚本必须删除子文件夹中除 subfolder1 之外的所有文件,而不删除子文件夹。我没有开始工作的是排除 "subfolder1".
中的文件
我正在尝试这样的事情
Get-ChildItem -Path E:\root -Include *.* -File -Recurse -Exclude E:\root\subfolder1 | foreach {$_.Delete()}
由于您要排除的子文件夹始终直接位于根文件夹下,因此我将分两步进行处理:
- 枚举根文件夹的子文件夹并排除
subfolder1
。
- 枚举剩余文件夹中的所有文件并将其删除。
像这样:
$root = 'root'
$excludes = 'subfolder1'
Get-ChildItem $root -Directory -Exclude $excludes | ForEach-Object {
Get-ChildItem $_.FullName -File -Recurse -Force | Remove-Item -Force
}
目前我正在尝试删除文件夹结构中的文件
root
|
|__subfolder1 (includes files)
|
|__subfolder2 (includes files)
|
etc
脚本必须删除子文件夹中除 subfolder1 之外的所有文件,而不删除子文件夹。我没有开始工作的是排除 "subfolder1".
中的文件我正在尝试这样的事情
Get-ChildItem -Path E:\root -Include *.* -File -Recurse -Exclude E:\root\subfolder1 | foreach {$_.Delete()}
由于您要排除的子文件夹始终直接位于根文件夹下,因此我将分两步进行处理:
- 枚举根文件夹的子文件夹并排除
subfolder1
。 - 枚举剩余文件夹中的所有文件并将其删除。
像这样:
$root = 'root'
$excludes = 'subfolder1'
Get-ChildItem $root -Directory -Exclude $excludes | ForEach-Object {
Get-ChildItem $_.FullName -File -Recurse -Force | Remove-Item -Force
}