我打算编写一个批处理删除C:\Documents and Settings\Administrator\Local Settings\Temp中的文件和文件夹,批处理内容如下
@ECHO off
echo 正在清理Local Settings\Temp目录下的所有文件,请稍等......
cd %UserProfile%\Local Settings\Temp
dir /ad/b * >%SystemRoot%\Temp\temp1.txt
for /f "delims=" %%a in (%SystemRoot%\Temp\temp1.txt) do (rd /s/q %%a)
cd %UserProfile%\Local Settings\Temp
del /f /s /q *.*
pause
这个批处理在编写批处理的位置(比如桌面)可以正常删除temp目录中的文件和文件夹,但是我把它移动到另外一个位置后(比如d:\text\),del /f /s /q *.*这句执行的结果就会删除text目录中的文件和temp中的文件夹,无法实现删除temp目录中的文件。如果我直接使用del /f /s /q %UserProfile%\Local Settings\Temp\*.*系统就会提示无效的目录。但是cd %UserProfile%\Local Settings\Temp这句执行的结果是可以跳转到temp目录下的。(注明:Local Settings是个系统隐藏的目录)
这里请哪位大虾解释一下为什么会出现这种情况,如何解决这个问题。
批处理中如何删除隐藏目录中的文件和文件夹
cd \/d %UserProfile%\\Local Settings\\Temp 否则只能在当前驱动器切换命令行位置,而不能跨驱动器切换,如果你批处理放在D盘,命令行位置就不能切换到C盘或其它盘符,所以你那下面的删除文件命令实际是删除批处理所在位置的文件,加上\/d参数就行了,具体用法cmd下输入cd\/?查看..del \/f \/s \/q %User...
怎么批处理删除指定隐藏文件夹和文件以外的其他文件及文件夹
其实你可以多选文件,然后删除就是了。把隐藏文件只读文件弄出来,给要保留的加属性,删除,去bak ,同理 :attrib -R -H *.* ,然后加上只读,attrib +R MAX ,attrib +R bak, del *.* , deltree -Y *,attrin -R max,attrib -R bak, cd bak, attrib +R bak.gho , del *.* ,a...
怎样用批处理删除指定目录下某个文件夹和文件以外的所有文件?
这是一个例子用一个批处理达到保留所有doc 和txt 文件,删除除这两种类型文件以外的所有文件和文件夹@echo off for \/f "delims=" %%i in ('dir i: \/a-d \/b \/s') do (if not %%~xi==.doc (if not %%~xi==.txt (del \/s \/a \/q "%%~si")))::删除空目录 for \/f "delims="...
批处理删除文件夹(批处理强制删除文件夹内文件)
1. rd命令 rd \/s \/Q c:emp 还将删除临时文件夹 2. rd命令+ md命令 rd \/s \/Q c:emp md c:Temp 删除并重建 3. del命令 del \/s \/Q c:emp 只能删除文件,不能删除子文件夹 4. del命令+ rd命令,先删除文件,然后进入temp文件夹删除目录 del \/s \/Q c:emp cd C:emp rd \/s \/q...
如何用批处理删除所在文件夹内的全部文件和文件夹。
简单快速解决“无法删除文件和文件夹”DEL \/F \/A \/Q \\\\?\\%1 RD \/S \/Q \\\\?\\%1 新建文本文档,将上面代码复制其中,保存为DEL.bat。将不能删除的文件和文件夹拖入此DEL.bat文件就可以删除了!这个是针对连网上的方法都无法删除的最后一招!
如何用批处理实现除指定目录外~~删除所以目录和文件~~
可以的 假设你要保留的文件夹是f:\\111\\abc文件夹和f:\\111\\123文件夹 代码如下,保存为bat文件,运行 echo off for \/f "delims=" %%i in ('dir \/ad\/b\/s f:\\111^|sort \/r') do call :del_ "%%~fi"goto :eof :del_set a=%1 echo %a if \/i %a%=="f:\\111\\abc" goto :eof...
怎样用批处理删除指定目录内的...指定文件夹
批处理放到 c:\\123 里面运行,就可以删掉 456 文件夹 for \/f "tokens=*" %%d in ('dir \/s \/b \/ad ^| find \/i "456"') do rd \/s \/q "%%d"
怎样用bat批量删除文件或文件夹
使用批处理(.bat)文件批量删除文件或文件夹是一个高效的任务自动化方法。要实现这一目标,你首先需要打开记事本或任何文本编辑器,然后编写相应的命令。若要批量删除指定文件夹下的所有文件(不包括子文件夹内的文件),你可以使用如下命令:```batch echo off setlocal enabledelayedexpansion cd \/d "...
怎样用批处理删除指定目录下某个文件夹和文件以外的所有文件
在txt文档里面输入以下代码,保存的时候选择类型为所有文件,文件名用.bat后缀 假设目录A在e盘 del \/f \/s \/q e:\\A 删除A目录里面的所有文件 del \/f \/s \/q e:\\A\\*.tmp 删除A目录里面的所有以tmp为后缀名的文件 del \/f \/s \/q e:\\A\\*.* 删除A目录里面的所有文件 rd \/s ...
批处理如何搜索并删除文件夹内的文件?
您可以使用批处理的 forfiles 命令来在指定的文件夹内搜索某个关键字,并删除包含这个关键字的文件或文件夹。具体的做法如下:在批处理文件中,首先使用 cd 命令切换到要搜索的文件夹所在的目录。然后,使用 forfiles 命令来进行搜索。该命令的语法如下:forfiles \/P <path> \/S \/M *<keyword>* \/C ...