标题: 会批处理的进来帮忙看一下
[打印本页]
作者: hzj629206
时间: 2007-9-1 13:35
标题: 会批处理的进来帮忙看一下
我写了个从IE临时文件夹复制特定格式的文件的bat批处理文件,但是为什么老是提示“more”不是内部命令和外部命令,也不是可运行的程序,高手们指点一二:
@echo off
set path1="C:\Documents and Settings\田野\Local Settings\Temporary Internet Files\content.ie5\sopc5jtw"
set path2=C:\Docume~1\田野\桌面
set path=D:\Program Files\Microsoft Office\Office12
cd %path1%
set /p format=请输入要复制的文件格式:
if not exist %path2%\%format% md %path2%\%format%
dir /a *.%format% >%path2%\%format%\%format%.txt
more %path2%\%format%\%format%.txt
set /p choice=是否要编辑 Y/N?
if '%choice%' == 'n' goto continue
echo 请稍候...
winword %path2%\%format%\%format%.txt
:continue
for /f %%i in (%path2%\%format%\%format%.txt) do call :ss %%i
pause
exit
:ss
set var=%1
if exist %var% copy %var% %path2%\%format% >nul
注:单独用more可以执行。
[
Last edited by hzj629206 on 2007-9-1 at 03:54 PM ]
作者: tusheng
时间: 2007-9-1 13:52
more没法执行,估计是你的环境变量少了个目录吧,more没找到。
作者: hzj629206
时间: 2007-9-1 16:14
标题: 解决之一
经过修改,我发现,只要把那个set path去掉就可以执行more语句,但不清楚为什么?
作者: tusheng
时间: 2007-9-1 16:55
path也是一个dos命令,
可以理解为关键字不能做变量吗?
作者: duanml
时间: 2007-9-3 03:25
内部指令和外部指令的区别都没搞清楚。
外部指令的程序一般都是通过path来被找到的,重设path又不加%path%,出问题是自然的。
作者: tusheng
时间: 2007-9-3 06:21
set path=D:\Program Files\Microsoft Office\Office12
这个是重设path的命令吗?
重设path的命令不是path **;***;****吗?
作者: duanml
时间: 2007-9-3 10:20
"指令path"可以操作"变量path",set也可以操作“变量path"。
作者: duanml
时间: 2007-9-3 10:22
set path=%path%;D:\Program Files\Microsoft Office\Office12