我有一个名为 G:\Project\Projects
此文件夹有一些(大约20个)未知子文件夹。一些子文件夹有一个名为SSS
的文件夹和一个名为的文件deleteme.doc
我想使用批处理文件或Powershell文件删除所有这些SSS
文件夹(包含内容)和deleteme.doc
文件。我不想删除这些嵌套在子文件夹中的文件或文件夹,而只删除那些直接位于子文件夹下的文件或文件夹。
例如我要删除此文件夹
G:\Project\Projects\proj 1\sss
但不是这些3-
G:\Project\Projects\proj 1\other\sss
G:\Project\Projects\sss
G:\Project\Projects\proj 1\sss (it is a file)
问题是我只想从任何地方双击运行批处理/ powershell文件,可能是从另一个分区或驱动器(甚至是网络计算机)运行。
我尝试了RMDIR G:\Project\Projects\*\SSS
它似乎没有用。
如果可能的话,请解释您的答案,并向我显示回收站删除和帕尔马删除的命令。尽管我认为没有Powershell不可能发送到回收站。
删除非系统分区中的文件夹不需要管理员特权吗?
Windows 10. Powershell版本5
我使用此方法创建了一个简短的Powershell解决方案-
$targetName='ss s';
foreach ($file in Get-Childitem "G:\Project\Projects\" )
{
$fname=$file.name;
if (Test-Path "G:\Project\Projects\$fname\$targetName\")
{
$shell = new-object -comobject "Shell.Application"
$item = $shell.Namespace(0).ParseName("G:\Project\Projects\$fname\$targetName")
$item.InvokeVerb("delete")
}
}
确认弹出后,此powershell脚本将该文件夹发送到回收站。(这不会发送任何名为“ ss s”的文件)
这似乎适用于批处理文件脚本-
set "b=ss s"
for /d %%a in (*) do IF EXIST "%%a\%b%\*" (rmdir /s "%%a\%b%")
如果目标文件夹名为“ $ ss s”,则必须将变量设置为 "b=/$ss s"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句