中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
作者:
标题: 请教DOS菜单问题 上一主题 | 下一主题
miscellaneous
新手上路





积分 8
发帖 3
注册 2008-5-27
状态 离线
『楼 主』:  请教DOS菜单问题

因为工作原因,需要用到很多dos的小程序,如果每次用U盘进入dos再打命令执行,感觉比较麻烦,特别是一些还有好多子目录。 不知道能不能做一个dos执行的bat或者其他程序,进入dos有执行它,就能出现U盘里面程序的一个菜单(清单一样的),然后用方向键或者Tab键选择相应的程序就能执行?当然了,菜单的路径参数之类要实现写好。 不知道这个能用dos实现么?不需要一进dos就启动,因为有时候还要执行其他的东西。


2008-5-27 17:36
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
sqcxwl
初级用户





积分 24
发帖 9
注册 2008-3-24
状态 离线
『第 2 楼』:  

set /p


2008-5-27 17:41
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
sqcxwl
初级用户





积分 24
发帖 9
注册 2008-3-24
状态 离线
『第 3 楼』:  

比如 @echo off set /p xz1="请选择:(Y,N)" if exist %xz1%=="Y" goto ks if exist %xz1%=="N" goto end


2008-5-27 17:42
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
miscellaneous
新手上路





积分 8
发帖 3
注册 2008-5-27
状态 离线
『第 4 楼』:  

感谢楼上的兄弟解答,也许我说得不清楚吧,按照你说的好像没反应 我现在是有一个U盘启动盘,在U盘下面有RST.exe,Ghost11.exe,aflash2.exe几个DOS程序。将电脑选择从U盘启动进入DOS后,我想输入一个批处理命令,然后会出来一个菜单界面,上面列出RST,Ghost,aflash;然后我用方向键或Tab键选中想执行的菜单,回车,然后就会执行相应的Dos程序。 我在Dos按照你上面的执行,没有什么反应~


2008-5-27 18:04
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 5 楼』:  

集自动判断u盘盘符、判断是否插入、手动选择执行文件于一体的批处理:
@echo off&setlocal enabledelayedexpansion
for /f "delims=驱动器:\" %%i in ('fsutil fsinfo drives^|more') do fsutil fsinfo drivetype %%i:|findstr "移动">nul&&set str=%%i
if exist %str%: (
   for /f "delims=" %%i in ('dir /s /a-d /b %str%:\*.exe') do (
       set /a n+=1&set _!n!=%%i&set var=!var! [!n!] %%~nxi
   )
   ) else (
   echo 经检测U盘未插入或未就绪,请按键退出程序。
   pause>nul&goto :eof
)
:set
cls&echo !var:~1!
echo.
echo 请选择要运行的程序序号。
echo.
set /p select=在此输入:
if "%select%"=="" goto set
echo %select%|findstr "[^0-9]">nul&&goto wrong
start "" "!_%select%!"&goto :eof
:wrong
echo 输入有误,请正确输入!&ping /n 2 127.1>nul&goto set 
唯一就是不能用于纯dos下。




批处理之家新域名:www.bathome.net
2008-5-27 18:49
查看资料  发送邮件  发短消息  网志  OICQ (841615149)  编辑帖子  回复  引用回复
knoppix7
银牌会员





积分 1287
发帖 634
注册 2007-5-2
来自 cmd.exe
状态 离线
『第 6 楼』:  

输入文件夹的头几个字母. 然后按几下tab.. 可以方便一点 ps:可以直接把他们的路径添加到PATH里


2008-5-27 19:30
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hulongzhuo
中级用户




积分 294
发帖 135
注册 2007-3-9
状态 离线
『第 7 楼』:  

用WBAT吧,这个很好的 编写P处理存为DOS.BAT @echo off :top cls call w.bat box @dos.bat:menu if "%?%"=="1" goto RST if "%?%"=="2" goto GHOST if "%?%"=="3" goto AFLASH goto exit :menu ============= 请选择 ============= [1.RST ] [2.GHSOT ] [3.AFLASH] :: :RST rst.exe goto exit :GHOST ghost11.exe goto exit :AFLASH aflash2.exe goto exit :exit 另外必须要有WBAT的三个文件,方能运行.


2008-5-28 10:37
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hulongzhuo
中级用户




积分 294
发帖 135
注册 2007-3-9
状态 离线
『第 8 楼』:  

点击下载:WBAT rthost.fam.cx/cndos- ...


2008-5-28 10:43
查看资料  发短消息  网志   编辑帖子  回复  引用回复
miscellaneous
新手上路





积分 8
发帖 3
注册 2008-5-27
状态 离线
『第 9 楼』:  

非常感谢 学习了


2008-5-28 16:00
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: