![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 03:53 |
共 47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已结]批处理运行显示命令语法不正确 |
| 可打印版本 1,522 / 11 |
| 第1楼 yuehong | 发表于 2008-10-16 09:47 |
| 初级用户 发帖 37 积分 64 | |
|
[已结]批处理运行显示命令语法不正确 http://www.cn-dos.net/forum/viewthread.php?tid=16676
22楼 显示命令语法不正确。使用环境win2000。请高手帮忙解决。谢谢。 原bat内容如下: [ Last edited by HAT on 2008-10-21 at 21:08 ] |
|
| 第2楼 HAT | 发表于 2008-10-16 09:53 |
| 版主 发帖 5,017 积分 9,023 | |
|
代码保存为test.bat
双击运行 结果贴出来看看 |
|
| 第3楼 yuehong | 发表于 2008-10-16 10:10 |
| 初级用户 发帖 37 积分 64 | |
|
D:\t>test
D:\t>setlocal ENABLEEXTENSIONS D:\t>call :Date2Day 星期四 2008-1 sdays D:\t>setlocal ENABLEEXTENSIONS D:\t>for /F "tokens=1-3 delims=/-, " %a in ('echo/星期四') do (set yy=%a & set mm=%b & set dd=%c ) D:\t>(set yy=星 & set mm= & set dd= ) D:\t>set /a dd=100 %100,mm=100 %100 D:\t>set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2 D:\t>set /a j=j/5+dd+y*365+y/4-y/100+y/400-2472633 D:\t>endlocal & set 2008-1=-719560 & goto :EOF D:\t>set /a sdays-= 找不到操作数。 D:\t>call :Day2Date difdate D:\t>setlocal ENABLEEXTENSIONS D:\t>set /a i=difdate,a=i+2472632,b=4*a+3,b/=146097,c=-b*146097,c/=4,c+=a D:\t>set /a d=4*c+3,d/=1461,e=-1461*d,e/=4,e+=c,m=5*e+2,m/=153,dd=153*m+2,dd/=5 D:\t>set /a dd=-dd+e+1,mm=-m/10,mm*=12,mm+=m+3,yy=b*100+d-4800+m/10 D:\t>(if 1 LSS 10 set mm=01 ) & (if 1 LSS 10 set dd=01 ) D:\t>endlocal & set =1970-01-01 & goto :EOF :: DateDel2.cmd - 删除指定路径下指 定日数以前修改的文件 命令语法不正确。 D:\t>echo 将删除 D:\t 下 前的修改的以下文件: 将删除 D:\t 下 前的修改的以下文件: D:\t>for /R %f in (*.*) do if "%~tf" LEQ "" echo "%f" D:\t>if "08-09-03 17:27 " LEQ "" echo "D:\t\rarreg.key" D:\t>if "08-10-16 09:41 " LEQ "" echo "D:\t\test.bat" D:\t>pause 请按任意键继续 . . . |
|
| 第4楼 HAT | 发表于 2008-10-16 10:13 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 3楼 |
|
| 第5楼 yuehong | 发表于 2008-10-16 19:59 |
| 初级用户 发帖 37 积分 64 | |
|
C:\Documents and Settings\Adminis
当前日期: 2008-10-16 星期四 我们这里统一的日期格式就是这样,不知道怎么操作? 我是dos菜鸟,希望版主能给个完整的解决方案,谢谢 |
|
| 第6楼 yuehong | 发表于 2008-10-20 23:43 |
| 初级用户 发帖 37 积分 64 | |
|
希望那位高手给个完整的代码。我是dos新手。急用。再次求助!!!!
很多xp系统以上能用的简单实用的命令在2000下都不能用。没办法求助各位了。。。 希望hat老大和各位高手看后能帮帮忙 2000 下的时间格式是 当前日期: 2008-10-20 星期一 |
|
| 第7楼 HAT | 发表于 2008-10-21 09:59 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 6楼 |
|
| 第8楼 yuehong | 发表于 2008-10-21 13:52 |
| 初级用户 发帖 37 积分 64 | |
Originally posted by HAT at 2008-10-21 09:59 AM: |
|
| 第9楼 HAT | 发表于 2008-10-21 15:43 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 8楼 代码保存为test.bat
双击运行 结果贴出来看看 |
|
| 第10楼 yuehong | 发表于 2008-10-21 18:42 |
| 初级用户 发帖 37 积分 64 | |
|
出现:
E:\>rem 演示:删除指定路径下指定天数以前修改的文件 E:\>rem 如果演示结果无误,把del前面的echo去掉,即可实现真正删除 E:\>setlocal enabledelayedexpansion E:\>rem 指定待删除文件的存放路径 E:\>set SrcDir=C:\Test E:\>rem 指定天数 E:\>set DayAgo=1 E:\>echo LastDate=date()-1 1>"C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\MyDate.vbs" E:\>echo FmtDate=right(year(LastDate),4) & right("0" & month(LastDate),2) & righ t("0" & day(LastDate),2) 1>>"C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\MyDate.vbs" E:\>echo wscript.echo FmtDate 1>>"C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\MyDate.vbs" E:\>for /F %a in ('cscript /nologo "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\MyDate.vb s"') do (set DateFlag=%a ) E:\>(set DateFlag=20081020 ) E:\>set DateFlag=2008-10-20 E:\>rem set DateFlag=-1/0--2008 E:\>for /R "C:\Test" %a in (*.*) do ( echo if "%~ta" LEQ "2008-10-20" (echo del /f /q "%a" ) ) E:\>( echo if "08-10-10 00:49 " LEQ "2008-10-20" (echo del /f /q "C:\Test\PDF.Creator.Plus .v4.0.0.8_Crack.rar" ) ) del /f /q "C:\Test\PDF.Creator.Plus.v4.0.0.8_Crack.rar" E:\>( echo if "08-10-10 00:48 " LEQ "2008-10-20" (echo del /f /q "C:\Test\Quick-PDF.PDF.To .Word.Converter.v1.0-Crack.rar" ) ) del /f /q "C:\Test\Quick-PDF.PDF.To.Word.Converter.v1.0-Crack.rar" E:\>( echo if "08-10-10 00:48 " LEQ "2008-10-20" (echo del /f /q "C:\Test\Quick-PDF.PDF.To .Word.Converter.v1.0.rar" ) ) del /f /q "C:\Test\Quick-PDF.PDF.To.Word.Converter.v1.0.rar" E:\>( echo if "08-10-16 07:41 " LEQ "2008-10-20" (echo del /f /q "C:\Test\RTX.v3.x.Keymake r.zip" ) ) del /f /q "C:\Test\RTX.v3.x.Keymaker.zip" E:\>( echo if "08-10-10 01:43 " LEQ "2008-10-20" (echo del /f /q "C:\Test\Solid.Converter. PDF.v4.0.560.Multilingual.Keygen.and.Patch-BRD.rar" ) ) del /f /q "C:\Test\Solid.Converter.PDF.v4.0.560.Multilingual.Keygen.and.Patch-BR D.rar" E:\>pause 请按任意键继续 . . . [ Last edited by yuehong on 2008-10-21 at 18:45 ] |
|
| 第11楼 HAT | 发表于 2008-10-21 19:36 |
| 版主 发帖 5,017 积分 9,023 | |
|
我说了很多次让你把dir /tc的结果贴出来,不知为何你一直不肯。
如果早点贴出来的话,也不必浪费这么多时间了^_^ [ Last edited by HAT on 2008-10-21 at 19:38 ] |
|
| 第12楼 yuehong | 发表于 2008-10-21 21:04 |
| 初级用户 发帖 37 积分 64 | |
|
测试成功,谢谢HAT的耐心指点!
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |