Powersell删除子文件夹,其中名称不在SQL输出中

问题描述

尝试删除名称不属于SQL输出的子文件夹。尝试了以下内容,但-exclude似乎未排除任何内容。我缺少明显的东西吗?

$SQL = Invoke-Sqlcmd -Query "SELECT id FROM files" -Database dbname -ServerInstance .\SQLEXPRESS
Get-ChildItem -Path C:\temp\files -Exclude $SQL | Remove-Item -Force -Recurse

解决方法

#Setup:

PS> get-childitem -path G:\Test\TestDelete\Music -recurse -directory


    Directory: G:\Test\TestDelete\Music


Mode                LastWriteTime         Length Name                                                                             
----                -------------         ------ ----                                                                             
d-----        8/26/2020   7:58 PM                Bread                                                                            
d-----        8/26/2020   7:58 PM                Buddy Holly                                                                      
d-----        8/26/2020   7:58 PM                Cat Stevens                                                                      

PS> $sql = "Bread","Cat Stevens"

#If your sql does not return an array it won't work!

PS> $sql -is [Array]
True

#Test of Command:

PS> get-childitem -path G:\Test\TestDelete\Music -recurse -directory -exclude $sql | Remove-Item -Force -Recurse

#Verification of results:

PS> get-childitem -path G:\Test\TestDelete\Music -recurse -directory


    Directory: G:\Test\TestDelete\Music


Mode                LastWriteTime         Length Name                                                                             
----                -------------         ------ ----                                                                             
d-----        8/26/2020   8:01 PM                Bread                                                                            
d-----        8/26/2020   8:01 PM                Cat Stevens  

注意:确保您的路径包含您不想删除的最后一个目录!

HTH

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...