VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > 批处理教程 >
  • 批处理全盘查找相关

 
复制代码
  1 批处理 全盘根目录下查找文件夹并删除(1)
  2 @echo off
  3 for %%a in (C D E F G H) DO (
  4 cd\
  5 if exist "%%a:\123\" rd /s /q "%%a:\123\"
  6 )
  7 echo 命令成功完成
  8 pause
  9 说明:上面这段红色代码表示,在全盘根目录下查找文件夹"123",并且找到后,无论该文件夹内是否还有其他文件或文件夹都一并删除。此批处理命令不支持在子目录中查找文件夹"123" 10 
 11 批处理 全盘指定位置查找文件夹并删除(2)
 12 @echo off
 13 for %%i in (c:,d:,e:,f:,g:,h:) do rd /s /q %%i\abc1\xd
 14 说明:在全盘的"abc1"文件夹下查找名为"xd"的文件夹,找到后删除。
 15 注意:此批处理命令在删除文件夹"xd"时,无论该文件夹内是否还有其他文件都将被删除。
 16 
 17 批处理 全盘查找文件夹并删除(3)
 18 @echo off
 19 for %%a in (c d e f g h) do (
 20 for /f "delims=" %%b in ('dir/ad/s/b "%%a:\"^|findstr /i "\abc$"') do (
 21 rd /s /q "%%b" >nul 2>nul
 22 ))
 23 说明:在全盘查找"abc"文件夹,找到后删除文件夹"abc"。此批处理命令支持在子目录中查找文件夹"abc",且无论文件夹"abc"内是否还有其他文件都将被删除。
 24 
 25 批处理 全盘查找文件并删除(4)
 26 @echo off
 27 for %%i in (c:,d:,e:,f:,g:,h:) do del /s /f /q %%i\abc.txt
 28 说明:在全盘内查找"abc.txt"文本文件,并且找到后删除该文件。此段批处理命令支持在子目录中查找。
 29 如果把"abc.txt"换成"*.txt"则表示,在四个盘符内查找所有的扩展名为txt的文本文件,并且找到后删除。
 30 
 31 批处理 全盘查找文件并拷贝到指定路径内(支持深层目录查找)(5)
 32 @echo off
 33 for %%a in (c d e f g h i j) do (
 34    for /f "delims=" %%i in ('dir /s/a/b/a-d "%%a:\你是我的眼.mp3" 2^>nul') do (
 35    copy "%%~dpi"\你是我的眼.mp3 "%USERPROFILE%\桌面\"
 36 )
 37 )
 38 
 39 批处理 全盘查找文件并移动文件到指定路径内(支持深层目录查找)(6)
 40 
 41 @echo off
 42 md d:\音乐
 43 for %%a in (c d e f) do (
 44     cd /d %%a:\
 45     for /r %%b in (123.txt) do move /y "%%b" "d:\音乐\"
 46 )
 47 pause
 48 
 49 说明:如果把文件名“123.txt”改成“*.txt”,则支持批量移动,还可以改成“*.txt *.mp3”等,就可以支持不同后缀名的多文件批量移动,要注意,在不同后缀名之间空一格。
 50 
 51 批处理 全盘指定位置查找文件并删除(7)
 52 @echo off
 53 for %%i in (c:,d:,e:,f:,g:,h:) do del /s /f /q %%i\abc1\abc.txt
 54 for %%i in (c:,d:,e:,f:,g:,h:) do del /s /f /q %%i\Progra~1\123a\*.*
 55 说明:以上是两条命令
 56 第一条:"for %%i in (c:,d:,e:,f:) do del /s /f /q %%i\abc1\abc.txt"表示删除所有盘符内的"abc1"文件夹下的"abc.txt"文件。
 57 第二条:"for %%i in (c:,d:,e:,f:) do del /s /f /q %%i\Progra~1\123a\*.*"表示删除所有盘符内的"Progra~1\123a"文件夹下的所有文件。
 58 
 59 批处理 全盘查找文件夹,找到后往文件夹内拷贝文件(8)
 60 @echo off
 61 for %%a in (c d e f g h) do (
 62 for /f "delims=" %%b in ('dir/ad/s/b "%%a:\"^|findstr /i "\abc$"') do (
 63 copy "E:\123.vbe" "%%b\" >nul 2>nul
 64 ))
 65 说明:在全盘查找"abc"文件夹,找到后拷贝E盘根目录下的"123.vbe"文件到abc文件夹内。
 66 注:此命令会在全盘所有的名为"abc"的文件夹内拷贝"123.vbe"文件。
 67 
 68 批处理 全盘指定位置查找文件夹,找到后往文件夹内拷贝文件(9)
 69 @echo off
 70 for %%i in (c:,d:,e:,f:,g:,h:) do copy "E:\123.vbe" %%i\abc1\xd
 71 说明:在全盘根目录下查找"abc1"文件夹,如果找到,则继续在其下查找是否有"xd"文件夹,如果符合一切条件则拷贝E盘根目录下的"123.vbe"文件到"xd"文件夹下。
 72 注:此路径为绝对路径。
 73 
 74 全盘根目录查找文件夹,找到后复制该文件夹(10)
 75 例如:在全盘根目录有一个文件夹“Favorites”,并且该文件夹内还有文件夹和文件,我要把该文件夹及文件夹里的所有目录和文件复制到E盘的同名文件夹下,就可以使用以下命令。
 76 @echo off
 77 for %%a in (C D E F G H) DO (
 78 cd\
 79 if exist "%%a:\Favorites" xcopy /e /h /i /k %%a:\Favorites E:\Favorites\
 80 )
 81 
 82 在硬盘最后一个盘符建立文件夹(11)
 83 @echo off
 84 for %%i in (Z Y X W V U T S R Q P O N M L K J I H G F E D C) do (
 85 if exist %%i:\nul (
 86 for /f "tokens=3" %%j in ('dir /-c %%i:\') do set freesize=%%j
 87 set last=%%i
 88 if not "!freesize!"=="0" goto last_drive
 89 ))
 90 goto :eof
 91 :last_drive
 92 echo 最后一个分区是 %last%
 93 md %last%:\001..\© 001.txt %last%:\001..\
 94 
 95 整篇红色批处理表示,在硬盘上查找最后一个分区,找到后,在最后一个分区上建立畸形文件夹"001",建好后再往文件夹"001"里拷贝文本文件"001.txt"。其中"&"符号表示:"命令连接字符",在本文的意思是,先建立(md)文件夹,紧接着执行拷贝(copy)命令。
 96 
 97 全盘搜索文件夹,找到后加隐藏属性(12)
 98 @echo off
 99 for %%a in (C D E F G H) DO (
100 if exist \\?\%%a:\123..\ echo set DstFolder=%%a:\123>>"%temp%\FolderProperty.bat"
101 )
102 echo ^>"%%temp%%\FolderProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFolder(">"%temp%\FolderProperty.bat'>\\?\%%DstFolder%%..\")>>"%temp%\FolderProperty.bat"
103 echo ^>^>"%%temp%%\FolderProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2>>"%temp%\FolderProperty.bat"
104 echo cscript ^/nologo "%%temp%%\FolderProperty.vbs">>"%temp%\FolderProperty.bat"
105 echo del %%0>>"%temp%\FolderProperty.bat"
106 call %temp%\FolderProperty.bat
107 del %temp%\FolderProperty.vbs
108 cls
109 exit
110 说明:其中蓝色部分表示,在全盘查找带点的文件夹“123..”,找到后把路径输出到%temp%\FolderProperty.bat文件里,红色部分表示,向FolderProperty.bat里追加内容。
111 注:此段批处理是给带点的文件夹加或去隐藏属性的,如果要给正常文件夹加隐藏属性只需要把此段批处理中的两处反色的点去掉就行了(第三排和第六排的两处点)。
112 
113 手动为文件夹加隐藏属性(13)
114 @echo off
115 title 兄弟联盟 小工具(为文件夹""/""隐藏属性)
116 :XDLM
117 color 0e
118 mode con cols=60 lines=36
119 chcp 437>nul&&graftabl 936>nul
120 if not exist CONFIG.NT copy %WinDir%\System32\CONFIG.NT %temp%\CONFIG.NT
121 @cls
122 echo DEVICE=%WinDir%\System32\ANSI.SYS /x >%WinDir%\System32\CONFIG.NT
123 if /i "%numis%"=="1" goto XDLM
124 echo.
125 command /cecho 
126 command /cecho 说明:此程序可以为文件夹“加”/“去”隐藏属性。
127 echo.
128 command /cecho 操作:把需要转换属性的文件夹拖拽到光标处,按回车键即可。
129 echo.
130 command /cecho 注意1:如是多层目录下的文件夹,在拖到光标处后请去除路径两边的双引号→"
131 echo.
132 command /cecho     2:如需为畸形文件夹(带点的文件夹)转换属性,在拖拽到光标处后,还要在文件夹名
133 echo.
134 command /cecho        末尾处加个点按回车就可以了。
135 echo.
136 command /cecho 例如:在E盘有一个畸形文件夹,名称是“新建文件夹.”,在拖拽到窗口后显示的是“e:
137 echo.
138 command /cecho       \新建文件夹.”加一个点后就成了“e:\新建文件夹..”按回车OK。
139 echo --------------------------------------------------------------------------------
140 copy %temp%\CONFIG.NT %WinDir%\System32\CONFIG.NT>nul
141 del "%temp%\CONFIG.NT"
142 set /p a=请把文件夹拖拽到该窗口:
143 echo set DstFolder=%a%>>%temp%\FolderProperty.bat
144 echo ^>"%%temp%%\FolderProperty.vbs" echo Set objFSO = CreateObject("Scripting.FileSystemObject").GetFolder(">"%temp%\FolderProperty.bat'>\\?\%%DstFolder%%\")>>"%temp%\FolderProperty.bat"
145 echo ^>^>"%%temp%%\FolderProperty.vbs" echo objFSO.Attributes=objFSO.Attributes+2>>"%temp%\FolderProperty.bat"
146 echo cscript ^/nologo "%%temp%%\FolderProperty.vbs">>"%temp%\FolderProperty.bat"
147 echo del %%0>>"%temp%\FolderProperty.bat"
148 call %temp%\FolderProperty.bat
149 del %temp%\FolderProperty.vbs
150 cls
151 set /p var=任务已完成,继续请按“1”回车  退出请按“3”回车
152 cls
153 if "%var%" == "1" goto XDLM
154 :exit
155 exit 
复制代码

 出处:https://www.cnblogs.com/cnjava/archive/2011/12/24/2300405.html



相关教程