中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 17:02
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 会批处理的进来帮忙看一下
可打印版本  1,217 / 7
第1楼 hzj629206 发表于 2007-09-01 13:35
新手上路 发帖 3 积分 7
会批处理的进来帮忙看一下
我写了个从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 ]
第2楼 tusheng 发表于 2007-09-01 13:52
中级用户 发帖 104 积分 213
more没法执行,估计是你的环境变量少了个目录吧,more没找到。
第3楼 hzj629206 发表于 2007-09-01 16:14
新手上路 发帖 3 积分 7
解决之一
  经过修改,我发现,只要把那个set path去掉就可以执行more语句,但不清楚为什么?
第4楼 tusheng 发表于 2007-09-01 16:55
中级用户 发帖 104 积分 213
path也是一个dos命令,

可以理解为关键字不能做变量吗?
第5楼 duanml 发表于 2007-09-03 03:25
中级用户 发帖 112 积分 231
内部指令和外部指令的区别都没搞清楚。

外部指令的程序一般都是通过path来被找到的,重设path又不加%path%,出问题是自然的。
第6楼 tusheng 发表于 2007-09-03 06:21
中级用户 发帖 104 积分 213
set path=D:\Program Files\Microsoft Office\Office12
这个是重设path的命令吗?

重设path的命令不是path **;***;****吗?
第7楼 duanml 发表于 2007-09-03 10:20
中级用户 发帖 112 积分 231
"指令path"可以操作"变量path",set也可以操作“变量path"。
第8楼 duanml 发表于 2007-09-03 10:22
中级用户 发帖 112 积分 231
set path=%path%;D:\Program Files\Microsoft Office\Office12
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023