中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-05 17:50
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 会批处理的进来帮忙看一下 查看 1,219 回复 7
楼 主 会批处理的进来帮忙看一下 发表于 2007-09-01 13:35 ·  中国 湖南 长沙 电信
新手上路
积分 7
发帖 3
注册 2007-08-29 19:44
18年会员
UID 96137
性别 男
状态 离线
我写了个从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 发表于 2007-09-01 13:52 ·  中国 浙江 金华 电信
中级用户
★★
积分 213
发帖 104
注册 2007-08-31 10:29
18年会员
UID 96246
性别 男
状态 离线
more没法执行,估计是你的环境变量少了个目录吧,more没找到。
3 解决之一 发表于 2007-09-01 16:14 ·  中国 湖南 长沙 电信
新手上路
积分 7
发帖 3
注册 2007-08-29 19:44
18年会员
UID 96137
性别 男
状态 离线
  经过修改,我发现,只要把那个set path去掉就可以执行more语句,但不清楚为什么?
4 发表于 2007-09-01 16:55 ·  中国 浙江 金华 电信
中级用户
★★
积分 213
发帖 104
注册 2007-08-31 10:29
18年会员
UID 96246
性别 男
状态 离线
path也是一个dos命令,

可以理解为关键字不能做变量吗?
5 发表于 2007-09-03 03:25 ·  中国 上海 电信
中级用户
★★
积分 231
发帖 112
注册 2007-06-19 20:44
19年会员
UID 91827
性别 男
状态 离线
内部指令和外部指令的区别都没搞清楚。

外部指令的程序一般都是通过path来被找到的,重设path又不加%path%,出问题是自然的。
6 发表于 2007-09-03 06:21 ·  中国 浙江 金华 电信
中级用户
★★
积分 213
发帖 104
注册 2007-08-31 10:29
18年会员
UID 96246
性别 男
状态 离线
set path=D:\Program Files\Microsoft Office\Office12
这个是重设path的命令吗?

重设path的命令不是path **;***;****吗?
7 发表于 2007-09-03 10:20 ·  中国 上海 电信
中级用户
★★
积分 231
发帖 112
注册 2007-06-19 20:44
19年会员
UID 91827
性别 男
状态 离线
"指令path"可以操作"变量path",set也可以操作“变量path"。
8 发表于 2007-09-03 10:22 ·  中国 上海 电信
中级用户
★★
积分 231
发帖 112
注册 2007-06-19 20:44
19年会员
UID 91827
性别 男
状态 离线
set path=%path%;D:\Program Files\Microsoft Office\Office12
论坛跳转: