Board logo

标题: [文本处理] [已解决]批处理如何删除带指定中文字符串和空格等特殊字符的文件夹以外的文件夹? [打印本页]

作者: qxlovexcx    时间: 2016-11-27 17:24     标题: [已解决]批处理如何删除带指定中文字符串和空格等特殊字符的文件夹以外的文件夹?

  1. set p="C:\Users\Administrator\Desktop\新建文件夹"
  2. pushd %p%
  3. dir /ad /s /b>1.txt
  4. for /f "tokens=* " %%i in ('findstr /v /i "\新建文件夹 (2)$ \新建文件夹 (3)$ \新建 文件夹$" 1.txt') do (
  5. rd /q /s "%%i"
  6. )
  7. del /q 1.txt
复制代码
这个批处理如果指定的是英文或数字不带空格和特殊字符是没问题,变中午和空格等就不行了,求教 谢谢

1、正确读取如上面3个文件夹
2、删除除上面3个文件夹以外的文件夹
作者: pcl_test    时间: 2016-11-27 17:42

论坛搜索“findstr  空格”
http://www.bathome.net/viewthread.php?tid=14682
作者: CommandBatCmd    时间: 2016-11-28 01:52

回复 1# qxlovexcx
  1. @echo off
  2. set p="C:\Users\Administrator\Desktop\新建文件夹"
  3. pushd %p%
  4. for /f "delims=" %%i in ('dir /ad /s /b^|findstr /I /V /C:"\新建 文件夹" /C:"\新建文件夹 (2)" /C:"\新建文件夹 (3)"') do (
  5. echo "%%~i"
  6. @rem rd /q /s "%%~i"
  7. )
  8. pause
复制代码

作者: qxlovexcx    时间: 2016-11-28 08:49

非常谢谢2位,本人太愚钝了,昨天看了半天的命令帮助,/C就没注意他。
作者: WHY    时间: 2016-11-28 23:47

findstr /I  /R /V /C:"\\新建 文件夹$" /C:"\\新建文件夹 (2)$"




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