中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 如何获得命令执行后返回的值
« [1] [2] [3] »
作者:
标题: 如何获得命令执行后返回的值 上一主题 | 下一主题
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 16 楼』:  

已从你的google论坛上下载了sed纯DOS版。并考贝到C盘,也按你的代码修改了test1.bat和test2.bat,但还是出现如下错误:
c:\>type a.txt
19

c:\>test1

一般性错误读驱动器F
A:放弃,R:重试,F:失败?a
c:\>

不知何解,请高手赐教。

2008-1-4 14:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 17 楼』:  

重新测试发现,在命令行输入sed /?时,出现:

一般性错误读驱动器F
A:放弃,R:重试,F:失败?a

测试环境:DOS7.1

2008-1-4 14:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 18 楼』:  

晕~你也太.....
C盘是Fat32吗?
C盘在Path里吗?
C盘在DOS下确实是C盘吗?
DOS下先找到sed,或者sed test1 test2放一起



第一高手    第二高手

2008-1-4 14:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 19 楼』:  

是在一起的,是用Microsoft Virtual PC做的DOS虚拟机。文件格式是Fat32,安装系统是DOS7.1
所有的文件都在同一个目录下。test1.bat、test2.bat、sed.exe、以及前面提到的find.exe等等都在一起。

谢谢!

2008-1-4 15:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 20 楼』:  

对不起,是都放在了C:盘的根目录下,包括A.TXT。从E:盘拷过去的。在E:盘下出出现同样问题。

2008-1-4 15:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 21 楼』:  

你那个path变量更改下否则麻烦不断
或者试试这样

  Quote:
@echo off
call test2.bat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20



  Quote:
:start1
if "%1"=="" goto end
.\sed -n "/%1/p" A.TXT>nul
if not errorlevel 1 if errorlevel 0 goto xxx
shift
goto start1
goto end

:xxx
shift
echo %1>A.TXT

:end

[ Last edited by fastslz on 2008-1-4 at 03:36 PM ]



第一高手    第二高手

2008-1-4 15:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 22 楼』:  

c:\>type a.txt
2

一般性错误读驱动器F
A:放弃,R:重试,F:失败?f
Load error: no DPMI - Get csdpm*b.zip


在出现“一般性错误读驱动器F”提示时,如果输入"f",就出现"Load error: no DPMI - Get csdpmi*b.zip"

请教:什么是“DPMI”,上面的话是什么意思?如何解决?

2008-1-4 16:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 23 楼』:  

哦我也忽略了,DPMI 是DOS Protected Mode Interface ,DOS下提供保护模式支持
http://www.cn-dos.net/forum/view ... &highlight=DPMI



第一高手    第二高手

2008-1-4 17:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 24 楼』:  

测试了一下这个不够稳定,下载站长推荐的
http://www.cn-dos.net/forum/viewthread.php?tid=18577&fpage=1



第一高手    第二高手

2008-1-4 17:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 25 楼』:  

谢谢指教,再次运行之:

C:\>DPMI.EXE
C:\>TYPE A.TXT
2

C:\>TEST1
C:\>TYPE A.TXT
2

运行dpmi.exe后,没有错误出现,但A.TXT里的内容却不会替加了,保持原来的值。还有,DPMI是不是每运行一次sed.exe前都要运行一次?

谢谢!

2008-1-4 18:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 26 楼』:  

我也试了,一样不稳定
这里可以下载到最新版的DPMI  http://japheth.de/Download/HXRT.ZIP
sed.exe也可以考虑用最新版的vkill那有3个版本的sed http://www.vkill.net



第一高手    第二高手

2008-1-4 19:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 27 楼』:  

楼上的高手啊,问题还是没有解决啊!帮帮忙吧,谢谢啦!

没有找到Http://www.vkill.net里的sed.exe

2008-1-4 22:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 28 楼』:  

http://www.vkill.net/tools.html



第一高手    第二高手

2008-1-5 14:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kavenlee72
中级用户




积分 369
发帖 87
注册 2003-9-14
状态 离线
『第 29 楼』:  

问题没解决,不会替加!:(:(:(

请教fastslz老大,有办法解决么?

谢谢了!

[ Last edited by kavenlee72 on 2008-1-5 at 06:58 PM ]

2008-1-5 16:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everdos
初级用户





积分 52
发帖 21
注册 2008-1-1
状态 离线
『第 30 楼』:  

用fc试试

test1.bat
--------------------------------------------------------------------------------------------
@echo off
call test2.bat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
type A.TXT
--------------------------------------------------------------------------------------------
test2.bat
--------------------------------------------------------------------------------------------
:start1
echo %1 > A2.TXT
fc A.TXT A2.TXT > nul
shift
if "%1"=="" goto end
if errorlevel 1 goto start1

echo %1 > A.TXT

:end

2008-1-5 20:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: