注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

天朝布衣田中码农参上

苦逼码农的点点滴滴,请多多指教!

 
 
 

日志

 
 
 
 

批处理脚本怎么将命令执行结果赋值给变量  

2017-06-13 11:15:17|  分类: 操作系统 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
相信这个是很多人都关心的问题,批处理脚本命令执行结果赋值给变量,当然最简单的用法就是使用for命令,如果在命令执行结果就是最终想要的的,那么可以使用如下命令【以取当前目录下的文件为例】:

for /f "tokens=*" %i in ('dir /b') do echo %i

执行效果如下:
批处理脚本怎么将命令执行结果赋值给变量 - sinsunson - 天朝布衣田中码农参上
这个命令非常简单,如果要用在批处中,请记住将%i换成%%i。但是,现实中情况是非常复杂的,有时命令执行的结果并不一定就是我们想要的,那么就需要进一步处理。比如命令,ipconfig /all,正常情况下,执行返回的结果是:
批处理脚本怎么将命令执行结果赋值给变量 - sinsunson - 天朝布衣田中码农参上
如果想要获取IP地址,那么就必须先要过滤掉无关信息,使用如下命令:

ipconfig /all | find /i "ipv4"

执行结果就如下:
批处理脚本怎么将命令执行结果赋值给变量 - sinsunson - 天朝布衣田中码农参上
这个结果就比较接近我们想要的了,但是还是有很多冗余信息,所以还需要加工。

for /f "tokens=2 delims=:(" %i in ('ipconfig /all | find /i "ipv4"') do echo %i

这里的tokens=2 delims=:(意思就是把命令执行结果用:(来分割,然后取第二个分割结果,另外因为使用了管理命令,所以|前面加了个^。执行效果如下:
批处理脚本怎么将命令执行结果赋值给变量 - sinsunson - 天朝布衣田中码农参上
good job!这正是我们想要的,大功告成了! 
  评论这张
 
阅读(2)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018