Board logo

标题: [文件操作] 批处理如何批量删除指定文件夹下以指定字符串+8位年月日数字命名的子文件夹 [打印本页]

作者: 冰蓝魂    时间: 2016-10-27 11:50     标题: 批处理如何批量删除指定文件夹下以指定字符串+8位年月日数字命名的子文件夹

求各位大神
如何批量删除某文件夹下全部特定字符+8位年月日的文件夹
如下图
作者: 冰蓝魂    时间: 2016-10-27 11:51

自己顶一个 在线等
作者: pcl_test    时间: 2016-10-27 12:07

  1. powershell -c "dir pack*|?{$_.PSIsContainer -and $_.name -match '^pack\d{8}$'}|rm -recurse"
  2. pause
复制代码

作者: 523066680    时间: 2016-10-27 12:30

Perl:
grep { print $_,"\n"  if ( -d $_ and /pack\d{8}/ ) } <*>;

实际删除时 print 改成 rmdir
作者: 冰蓝魂    时间: 2016-10-27 12:49

回复 3# pcl_test


    O(∩_∩)O谢谢版主!
麻烦再请教下,如何给这个在添加路径 比如D盘20161027文件夹下
作者: pcl_test    时间: 2016-10-27 14:00

回复 5# 冰蓝魂

dir -path 'D:\20161027\' pack*
作者: 冰蓝魂    时间: 2016-10-27 14:40

回复 6# pcl_test

O(∩_∩)O谢谢版主
再请教下 如果不知道pack在哪个盘 又该如何处理?
作者: pcl_test    时间: 2016-10-27 22:52

本帖最后由 pcl_test 于 2016-10-27 22:57 编辑

回复 7# 冰蓝魂
  1. rem 只列出不删除
  2. powershell -c "[Environment]::GetLogicalDrives()|%%{dir $_ pack* -r|?{$_.PSIsContainer -and $_.name -match '^pack\d{8}$'}}" 2>nul
  3. pause
复制代码

作者: 冰蓝魂    时间: 2016-10-28 09:48

回复 8# pcl_test


        还是麻烦版主帮我写一个能够删除“INSPUR\PS11.0.1”中的“$LocalSyntax$”和“buffer”两个文件夹及pack+8位年月日的文件夹,其中“INSPUR\PS11.0.1”是不确定在哪个盘下的,有可能有两个盘里都有,也有可能只有一个盘里有
     在这先谢过版主了!
作者: 523066680    时间: 2016-10-28 10:41

这种增量需求版主还打算继续帮下去吗?
作者: Bella    时间: 2016-10-28 23:10

回复 10# 523066680


    以前我也是挤牙膏, 后来觉得不好意思, 就开始看教程...
版主每天看见这种帖子, 估计会恼火




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2