两个bat文件需要操作文件移动、删除,哪位高手帮帮忙? 255
2、递归移动abc目录下,2分钟之前创建mp3 MP4 wav文件到该文件的上一层目录。 展开
@echo off
rem 删除指定目录下大小为0字节的指定扩展名/类型的文件
set #=Any question&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$% %z%
set "folder=D:\xxx\abc"
if not exist "%folder%" (echo;"%folder%" not found&goto end)
cd /d "%folder%"
for /f "delims=" %%a in ('dir /a-d/b/s *.mp3 *.mp4 *.wav') do (
if "%%~za" equ "0" (
echo;[%%~za]"%%a"
del /a /f /q "%%a"
)
)
:end
echo;%#% +%$%%$% %z%
pause
第二题呢?老兄?
按运行后窗口中的提示联系我
2. 还不如用VB等写个程序,简单
楼主我知道怎么解答第一问了,需要用到echo,del,for,comp,if,dir,六种命令和一个环境变量%errorlevel%,(第二个问题请楼主重新组织语言,谢谢,我没有看懂~)
零、在目录abc所在的目录下里建立一个remov.bat文件(与abc在同一个目录之下)
输入以下内容,然后保存它,之后双击即可
cd %~dp0
rem 供双击打开用
rem del /q>remov0.tmp
type nul>remov0.tmp
rem 生成一个0字节文件供比较
dir /s /b abc\*.mp3 abc\*.mp4 abc\*.WAV>remov1.tmp
rem 生成待检查文件列表
FOR /F %%i in (remov1.tmp) do (
rem 遍历这个列表
echo n|comp remov0.tmp %%i
rem 通过比较文件来判断是否为空,预设回答以自动处理
rem echo %errorlevel%
rem 本行用于调试
if not errorlevel 1 (
rem 不一致 也就是空文件
del %%i
rem 删掉它
)
)
del remov0.tmp
del remov1.tmp
rem 清空本程序使用过的缓存文件
双击之前
双击之后