无忧启动论坛

标题: GRUB4DOS 命令行仿 CMD 界面 [打印本页]

作者: chenall    时间: 2011-5-24 14:15
标题: GRUB4DOS 命令行仿 CMD 界面
没有什么实际用途,只是一个演示。

嘿嘿,有兴趣可以自己继续扩展。

下载附件,进入GRUB4DOS命令行之后输入CMD.BAT启动进入仿CMD 界面。
输入EXIT就可以退出。

[ 本帖最后由 chenall 于 2011-5-24 14:16 编辑 ]

20110524141313561.png (19.69 KB, 下载次数: 164)

20110524141313561.png

cmd.rar

358 Bytes, 下载次数: 158, 下载积分: 无忧币 -2


作者: zxw    时间: 2011-5-24 14:34
c大真会玩啊....
实用价值没有,从中学习技术。
作者: Plantsoot    时间: 2011-5-24 15:19
呵呵,学习C大的批处理……
作者: 135956    时间: 2011-5-24 16:04
合适我,习惯了MS的操作。。。
作者: zxw    时间: 2011-5-24 16:20
标题: 回复 #4 135956 的帖子
要完全模仿cmd,还需要复杂的拓展。
作者: ones    时间: 2011-5-25 18:04
有没有edit命令?在grub4dos下怎么编辑文本呢?
作者: lxl1638    时间: 2011-5-25 21:07
从图上看到 dir 命令在同一行列出所有的文件、目录?
能不能象微软的CMD一样,dir命令列文件目录时,一个文件[目录]占一行。

另,是否支持NTFS格式文件系统?可否支持带空间的文件目录名?
作者: fujianabc    时间: 2011-5-25 21:42
不错啊,符合大众习惯。前一阶段玩的efi shell感觉也在向dos/cmd靠拢而不是向linux靠拢
作者: andos    时间: 2011-5-25 21:49
原帖由 fujianabc 于 2011-5-25 21:42 发表
不错啊,符合大众习惯。前一阶段玩的efi shell感觉也在向dos/cmd靠拢而不是向linux靠拢

向linux靠拢=找死
不合大众家用使用者习惯,呵呵
作者: tuxw    时间: 2011-5-25 22:04
当前路径即时提示是个很贴心的,Grub4Dos可以考虑内置支持这个
作者: chenall    时间: 2011-5-25 22:14
标题: 回复 #7 lxl1638 的帖子
这个是使用批处理进行模拟的,实际上调用的还是GRUB4DOS的内部命令。
像DIR命令其实就是ls 命令。type = cat

要一行一行显示也是可以的,只是需要处理的东西比较多,但目前还是没有办法像CMD那样显示得很整齐。

用批处理DIR还可以增强一下,比如支持通配符*,?,支持查找子目录等,这些处理起来比较麻烦。用批处理的话效率太低。
作者: chenall    时间: 2011-5-25 22:16
原帖由 ones 于 2011-5-25 18:04 发表
有没有edit命令?在grub4dos下怎么编辑文本呢?


目前没有,当然了如果有人愿意写一个EDIT程序,那很快就会有了。

现在很少人参与GRUB4DOS的开发。
作者: tuxw    时间: 2011-5-25 23:41
主要是还没有解决文件创建、写入、修改文件大小的问题,在这种情况下实现一个edit限制太多意义不大
作者: rroo    时间: 2011-5-28 14:23
chenall大师的grub下的cmd用来查看文件,很方便,收藏了。谢了。
作者: chiannet    时间: 2011-5-29 11:29
老大,介绍几款grub下能解压cab或7z格式的程序吧。
作者: Hcrty    时间: 2011-5-29 13:46
挺好玩的...
有待加强拓展...
作者: Climbing    时间: 2011-6-2 23:04
忽悠,继续忽悠,10个字
作者: dihuo0    时间: 2011-7-1 14:25
我做了一些修改:
1. 在cmd.bat中,echo命令有时候不能正常工作。可能是由于第9行的if exist cmd && %cmd%,修改为if exist cmd %cmd%即可。
2.将run_cmd标签中的goto :%1 || exit修改为if not exist (bd)/boot/grub/%1 goto :%1 || exit。即如果(bd)/boot/grub/中存在与%1同名的外部命令,则优先执行它,否则执行cmd.bat的子命令。
  1. !BAT
  2. :Loop
  3. debug off
  4. pager off
  5. errorcheck off
  6. set cmd=
  7. set /p cmd=%@root%>
  8. debug off
  9. call :run_cmd %cmd%
  10. if exist cmd %cmd%
  11. goto :Loop
  12. :run_cmd
  13. if "%~1"=="" exit
  14. if not exist (bd)/boot/grub/%1 goto :%1 || exit
  15. exit
  16. :dir
  17. set cmd=ls %cmd:~3%
  18. exit
  19. :type
  20. set cmd=cat %cmd:~4%
  21. exit
  22. :cd
  23. set cmd=%2
  24. if not exist cmd && set cmd=echo %@root% && exit
  25. if "%cmd:~0,1%"=="(" && set cmd=root %cmd% && exit
  26. if "%cmd:~0,1%"=="/" && set cmd=root ()%cmd% && exit
  27. if not "%cmd%"==".." set cmd=root %@root%/%cmd% && exit
  28. set cmd=%@root%
  29. call :cd_up
  30. set cmd=root %cmd%
  31. exit
  32. :cd_up
  33. if "%cmd:~-1%"=="/" exit
  34. if "%cmd:~-1%"==")" exit
  35. set cmd=%cmd:~0,-1%
  36. goto :cd_up
复制代码

cmd.zip

395 Bytes, 下载次数: 18, 下载积分: 无忧币 -2


作者: ql1307096    时间: 2011-7-5 08:40
有道理,建议在G4D加入能方便切换当前目录的功能,并且能方便的查看当前目录下的文件,
作者: 2011dwdcth    时间: 2011-7-5 09:08
好玩,c大厉害,我得好好学习




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3