标题: [求助]急!!!请高手帮忙
[打印本页]
作者: xiaohami
时间: 2008-4-16 11:17
标题: [求助]急!!!请高手帮忙
我下了一个软件,有功能限制,有一个程序MADE.MEX,一个数据文件,下面有民i个madei.dat 文件,我想要一个dos FOR代码实现,以下功能.
1.自动查找到madei.dat的个数,(或者让人输入个数)
2.将made1.dat ren为made.dat
3.启动made.exe
4.关闭made.exe
4.将made.dat ren为made1.dat
5.将made2.dat ren为made.dat
..............................
将mede.dat ren为madei.dat
关闭
这是我写的,请指正错误
@echo off
mode con lines=20 cols=50
color 1f
title made辅助工具
setlocal enabledelayedexpansion
set /a var=1
cls
set /a choice=
set /p choice= 请输入你的made*.dat个数(退出请直接回车):
echo.
echo 每次8个站完成后,你只要按任意键即可.
echo.
for /f %var% in (1,1.%choice%)
do
(
echo ------=== made%var%===------
@ren made%var%.dat made.dat
start made.exe
pause
@taskkill /im made.exe /f
call :ProcDelay 300
@ren made.dat made%var%.dat
set /a var=%var%+1
)
echo "终于结束了!"
goto end
pause
cls
exit
:ProcDelay delayMSec_
setlocal enableextensions
for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set start_=%%h%%i%%j%%k
:_procwaitloop
for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set now_=%%h%%i%%j%%k
set /a diff_=%now_%-%start_%
if %diff_% LSS %1 goto _procwaitloop
谢谢各位了
作者: abcd
时间: 2008-4-16 13:54
set /a var=1
cls
set /a choice=
赋值的话,直接set 就行了。不需要加/a开关的
for /f %var% in (1,1.%choice%)
do
(
echo ------=== made%var%===------
@ren made%var%.dat made.dat
start made.exe
pause
@taskkill /im made.exe /f
call :ProcDelay 300
@ren made.dat made%var%.dat
set /a var=%var%+1
)
for里面变量只能是单字符变量,而且需要写成%%i等格式,而不是%i%格式。
楼主还是去熟悉一下这些基本命令的用法吧。
作者: xiaohami
时间: 2008-4-16 16:16
标题: 感谢帮助我的朋友!!!
昨天做了一天的FOR循环今天经高手一指点,终于成了,我是菜鸟,希望新手和我一样多多学习,DOS这个东西太有意思了