Board logo

标题: cmd 命令帮助 [打印本页]

作者: 随风    时间: 2008-4-22 11:47     标题: cmd 命令帮助

cmd 命令帮助
  1. @echo off&set "ko=                        "
  2. ::code 随风 @bbs.bathome.net   2008-04-22
  3. setlocal enabledelayedexpansion
  4. for /f "delims= " %%a in ('help^|findstr /i "^[a-z]"') do (
  5.    set /a n+=1&set _!n!=%%a!ko!
  6. )
  7. set _72=共71个命令
  8. :loop
  9. color 1f&title cmd 命令帮助
  10. for /l %%a in (1 3 !n!) do (
  11.    set /a t=%%a+1,s=t+1
  12.    if !t! lss 10 (set l=0) else set "l="
  13.    call echo !l!%%a. !_%%a:~0,20! !l!!t!. %%_!t!:~0,20%% !l!!s!. %%_!s!:~0,10%%
  14. )
  15. set /p m=请输入编号查询相应命令帮助:&cls
  16. set /a m=100!m!%%100
  17. call set ok=%%_!m!%%
  18. title %ok:~0,10% 命令帮助&color 1e
  19. %ok% /? | more
  20. color 5a&echo.&echo 按任意键回主菜单。。。
  21. pause>nul
  22. cls&goto loop
复制代码

作者: tangfu    时间: 2008-6-14 10:07

楼主可否讲解一下
for /f "delims= " %%a in ('help^|findstr /i "^[a-z]"') do (
   set /a n+=1&set _!n!=%%a!ko!
和echo !l!%%a. !_%%a:~0,20! !l!!t!. %%_!t!:~0,20%% !l!!s!. %%_!s!:~0,10%%
有点乱...
作者: lhjoanna    时间: 2008-11-6 16:53

在运行时前面怎么出现了
01. ~0,20l2. ~0,20_3:~0,10
04. ~0,20l5. ~0,20_6:~0,10
07. ~0,20l8. ~0,20_9:~0,10
10. ~0,20l11. ~0,20_12:~0,10
13. ~0,20l14. ~0,20_15:~0,10
16. ~0,20l17. ~0,20_18:~0,10
19. ~0,20l20. ~0,20_21:~0,10
22. ~0,20l23. ~0,20_24:~0,10
然后才开始显示有哪些命令,在for给n循环计数前插入echo !n!显示为n的值为24,这是为何?
计数前插入set /a n=0 上述情况消失,实在想不通原因,还请楼主解释一下原因。

[ 本帖最后由 lhjoanna 于 2008-11-6 16:55 编辑 ]
作者: mygoodboy    时间: 2008-11-9 09:14

哗,厉害,学习学习^_^




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2