[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 批处理for不能正常抓取doskey/history的输出?

  1. cd&doskey/history
  2. for /f "delims=" %a in ('doskey/history')do @echo %a
复制代码


为何输出为空?

想强调一下,请大家直接在cmd命令行下做代码测试

[ 本帖最后由 plp626 于 2010-8-31 21:50 编辑 ]

哦,我知道了,for /f 在抓去外部输出时是重新启动cmd,此时执行doskey/history是在非当前cmd环境下执行的,由于新环境下doskey/history 输出为空所以抓住的输出为空

大家觉得呢?

TOP

那现在我想问大家,在不生临时文件的情况下怎么用for 抓去doskey/history 的输出?

TOP

原帖由 523066680 于 2010-8-31 21:01 发表
不能吧?
刚刚试了一下不加 @echo off
只两行:
doskey /history
pause
除了pause,什么输出都没有。
然后  在批处理脚本中使用doskey也是无效的, 那么doskey /history怎么会有意义呢


你直接双击批处理当然不会有cmd下的“history”
当你在cmd下使用了一些命令后,然后你可以运行这个保存了doskey/history的脚本,来判断你做的某些事情,用处还是蛮大的

TOP

返回列表