zoukankan      html  css  js  c++  java
  • bat批处理下如何像shell一样将命令执行的效果赋值给变量

    在bat下如何实现像shell一样,把执行命令行后的结果赋值给变量呐?

    刚开始,可真难为到我了。随着对bat批处理知识熟悉的加深。

    学习到了!!!

    举个 栗子:

    svnlook  uuid  C:Repository est          # 这行命令什么意思呐。它是svn服务器的命令(因为最近在搞svn的东西啦)。

                                                                  # 所以这行命令实现的效果是 返回 test 仓库的 UUID

    shell 下会这样实现:

    UUID=`svnlook uuid C:Repository est`     #  这里是 · 哦。这个符号就是键盘ESC按键下的那个 ·    (好小哦................)

    ==================================================

    好的~~~看到了吧,shell下实现真的很简单,bat下也是可以实现的但是麻烦了点欸。

    dos下:          for   /f   “delims=”  %t   in  ('svnlook uuid C:Repository est')  do  set  UUID=%t   

    bat文件中:    for   /f   “delims=”  %%t   in  ('svnlook uuid C:Repository est')  do  set  UUID=%%t

    上面的区别就是 dos下执行 为 %t , bat文件中执行就是 %%t  。

    还有就是要注意 ()里面使用的是单引号,因为在bat里单引号就是引用命令的意思。

    这里的 delims 值得就是分隔符的意思。我这里写的是  “delims=” 。没有分隔符,所以会进行 行分割,

    这样就可以取到第一行的结果了。

    学会了这个,再写bat时。写出来的脚本更漂亮了,更简洁了。一口气能上10层楼了。哈哈。

       

  • 相关阅读:
    今天18:40分左右一部价值500多块捷安特自行车被盗!
    利用ASP.net上传文件
    _desktop.ini
    Visual Studio .NET 设置移植工具
    审计厅的项目终于可以告一段落了
    Word2CHM Assistant(Word2CHM助手)V2.1.0 破解版
    最近比较烦!
    delphi 中 Format 用法总汇
    谈谈公司管理及需求方面的问题
    [待续]SQLSERVER无法访问远程服务器问题
  • 原文地址:https://www.cnblogs.com/xautxuqiang/p/8963444.html
Copyright © 2011-2022 走看看