使用bat脚本存储exe文件中存在的函数的返回值
我正在尝试使用 bat 调用 saur.exe 中存在的函数。 它看起来像这样:
saur.exe readName
当我执行它时,它返回一个字符串“Saurabh”。
现在我想将“saurabh”存储在名为 name
的变量中。
所以我正在做:
set name = saur.exe readName
echo .%name%
在这种情况下,它不会执行。 它在 echo 命令前面给出空白。
I am trying to call a function present in saur.exe using bat.
It looks something like this:
saur.exe readName
When i execute it, it returns a string "Saurabh".
Now that I want to store "saurabh" in a variable called name
.
So I am doing :
set name = saur.exe readName
echo .%name%
In this case, it doesnot execute.
It gives blank in front of echo command.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
由于某些奇怪的原因,做你想做的事需要一些尴尬的解决方法。长的方法是将命令的输出存储在文件中,然后将该文件读入变量,最后删除该文件。更短(并且几乎不可读)的方法是:
:-(
For some strange reason, doing what you want requires some awkward workarounds. The long way would be to store the output of the command in a file, then read the file into the variable, and finally delete the file. The shorter (and barely readable) way is:
:-(
一些 SET 命令文档将显示您只能将字符串分配给环境变量(http://www.computerhope.com /sethlp.htm)。
在上面的示例中,您实际上设置了一个名为:
"name "
的环境变量,但是您正在回显该变量:
"name"
我能找到的最佳解决方案是类似的东西
希望这有帮助:)
Some SET command documentation will show that you can only assign strings to environment variables (http://www.computerhope.com/sethlp.htm).
In your example above, you have actually set an environment variable called:
"name "
Yet you are echoing the variable:
"name"
The best solution I can find is to do something similar to
Hopefully this helps :)