Board logo

标题: 请教这个P出错在那里 [打印本页]

作者: cjfcjf222     时间: 2007-10-25 12:37    标题: 请教这个P出错在那里

原始没有精简的:
@echo off

cls
del /Q /f "%temp%\copy.tmp" >nul 2>nul
rem 此处检测U盘有没有在
for %%i in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do @fsutil fsinfo drivetype %%i: >>"%temp%\copy.tmp"
findstr /i "可移动驱动器" "%temp%\copy.tmp"
if errorlevel==1 goto end
if errorlevel==0 goto copy

:end
mode con cols=80 lines=11
echo.
echo.
echo      没有检测到你的内存卡,可能的原因是卡没有插好,读卡器不识
ping 127.0.0.1 -n 10 >nul 2>nul
goto x

:copy
color 2f
mode con: cols=50 lines=20
echo.
echo.
echo     内存卡已经找到MP3文件,开始复制文件
rem 此处赋值U盘为yyy
for /f "tokens=1" %%i in ('findstr /i "可移动驱动器" "%temp%\copy.tmp"') do set yyy=%%i
rem 此处检测U盘MP3文件位置并复制
if exist "%yyy%\*.mp3" goto fii                         :下面的P从此处精简
if exist %yyy%\MUSIC\*.mp3 goto fmm
if exist "%yyy%\My Music"\*.mp3 goto fyy
goto z

:fii
del /f /q %yyy%\*.mp3
copy/y "E:\金鹏调整\Audio\QQ爱.mp3" %yyy%
copy/y "E:\金鹏调整\Audio\嗨曲.mp3" %yyy%
copy/y "E:\金鹏调整\Audio\Audio1\*.mp3" %yyy%
goto y

:fmm
del /f /q %yyy%\MUSIC\*.mp3
copy/y "E:\金鹏调整\Audio\QQ爱.mp3" %yyy%\MUSIC
copy/y "E:\金鹏调整\Audio\嗨曲.mp3" %yyy%\MUSIC
copy/y "E:\金鹏调整\Audio\Audio1\*.mp3" %yyy%\MUSIC
goto y

:fyy
del /f /q "%yyy%\My Music"\*.mp3
copy/y "E:\金鹏调整\Audio\QQ爱.mp3" "%yyy%\My Music"
copy/y "E:\金鹏调整\Audio\嗨曲.mp3" "%yyy%\My Music"
copy/y "E:\金鹏调整\Audio\Audio1\*.mp3" "%yyy%\My Music"     :到此处为止

:y
color fc
echo.
echo.
echo      ****文件复制完成.请查看文件的完整性!****
ping 127.0.0.1 -n 10 >nul 2>nul
goto x

:Z
color 4f
mode con cols=80 lines=11
xcopy/e/y "E:\金鹏调整\Audio\QQ爱.mp3" "%yyy%\My Music\"
xcopy/e/y "E:\金鹏调整\Audio\嗨曲.mp3" "%yyy%\My Music\"
xcopy/e/y "E:\金鹏调整\Audio\Audio1\*.mp3" "%yyy%\My Music\"
xcopy/e/y "E:\金鹏调整\Video\*.*" "%yyy%\Video\"
rd /q/s "%yyy%\My Music\Audio1"
cls
echo.
echo.
echo       **内存卡内找不到原始MP3文件,卡是空白的,文件已经复制进去**
echo       **你需要再手工定位MP3和电影文件的存放位置,否则将无法播放**         
echo.
ping 127.0.0.1 -n 20 >nul 2>nul

:x
exit


精简部份后的P,只是好象不能写到内存卡里了

if exist "%yyy%\*.mp3" set mpp=%yyy%
if exist %yyy%\MUSIC\*.mp3 set mpp=MUSIC
if exist "%yyy%\My Music"\*.mp3 set mpp="My Music"
if not exist %yyy%\%mp3%\*.mp3 goto z

del /f /q %yyy%\*.mp3
copy/y "E:\金鹏调整\Audio\QQ爱.mp3" %yyy%\%mpp%
copy/y "E:\金鹏调整\Audio\嗨曲.mp3" %yyy%\%mpp%
copy/y "E:\金鹏调整\Audio\Audio1\*.mp3" %yyy%\%mpp%

color fc
echo.
echo.
echo      ****文件复制完成.请查看文件的完整性!****
ping 127.0.0.1 -n 10 >nul 2>nul
goto x
作者: fastslz     时间: 2007-10-25 13:42
if exist "%yyy%\*.mp3" set mpp=%yyy%
if exist %yyy%\MUSIC\*.mp3 set mpp=MUSIC
if exist "%yyy%\My Music"\*.mp3 set mpp="My Music"
if not exist %yyy%\%mp3%\*.mp3 goto z

红色部分错误
作者: 不得不爱     时间: 2007-10-25 15:08
if exist "%yyy%\*.mp3" set mpp=%yyy% 有错误
应该是if exist "%yyy%\*.mp3" set mpp=
作者: cjfcjf222     时间: 2007-10-25 19:00
这个P我在运行时好象只能检测第一个IF值然后能够SET为MPP,后面的无法再检测,如果MP3不在根目录,则好象直接变成了复制MP3到当前目录的状态(就是直接复制到硬盘的当前目录了),好奇怪

[ Last edited by cjfcjf222 on 2007-10-25 at 07:06 PM ]