win7 与 winXP dos命令执行的差异

wulongbin439009082 2015-01-16 09:24:23
win7操作系统下,在命令行输入 Reg query "hklm\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v "path"
返回结果如下图:

我只想取键值,但是实际的返回结果不但包括路径,项,项的类型,键值

winXP操作系统下,在命令行输入同样的命令,返回的结果正是我想要的,只有键值

不知道win7 和 winXP在dos命令执行有什么差异,或者win7通过什么设置是reg query的结果可以与winXP保持一致
...全文
173 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wulongbin439009082 2015-01-17
  • 打赏
  • 举报
回复
我是在bat里面写的,bat里面哪有switch case啊,你这说的太泛了,我在bat里面写了个截取字符串的操作,bat语法不是很了解,截取操作不理想
日知己所无 2015-01-17
  • 打赏
  • 举报
回复
1)写个regvbs.vbs里面就1行 WScript.Echo(CreateObject("Wscript.Shell").RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path")) 执行方法:cscript/nologo regvbs.vbs 出来的结果估计就是你想要的了 VBS的返回值是可以在批处理里面使用的,具体方法百度吧 2)不用VBS应该也能解决,下面的帖子自己试试吧 http://bbs.csdn.net/topics/320045936 3)本来想把WinXP的Reg.exe拷贝到Win7里试试的……结果,杯具了 在Win2000和Win7里面Reg.exe都是独立运行的程序 Win2000不支持/v参数所以不满足你的要求 把WinXP的Reg.exe拷贝到Win7里之后,折腾了半天都用不了,所以这种方法最好还是放弃吧 个人相对喜欢第一种方法,因为更加灵活强大 纯在DOS里面解决问题的话,会比较复杂;如果对批处理不是特别熟悉的话,过一段时间即使是自己写的命令也看不懂了
普凡 2015-01-16
  • 打赏
  • 举报
回复
就算差异是必须的也没关系,你做过case判断不同的截取策略就ok了~

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧