首页 > 其它 > 批处理中把命令执行结果赋值给变量

批处理中把命令执行结果赋值给变量

2012年4月16日 发表评论 阅读评论

在批处理中,如果需要把一个命令的处理结果赋值给一个变量,可以使用如下方法:

for /f "delims=" %%t in ('命令字符串') do set str=%%t
echo %str%

当命令字符串中含有%时,需要转义。使用imagemagick中的identify命令获取图片的宽和高:

identify -format %wx%h demo.jpg

直接在命令行中使用上述命令可以看到输出了图片的高和宽,但是用它放在批处理脚本中来获取命令的输出结果,则失败,原因是命令字符串中含有%符号,它在批处理有特殊含义,所有需要转义,转义的方法是使用两个%%,正确的做法是:

for /f "delims=" %%t in ('identify -format %%wx%%h demo.jpg') set str=%%t


欢迎转载,转载请注明文章出处,谢谢!
垃圾有点差凑合看还不错很精彩 (2 人打了份: 平均分:1.00)
Loading...Loading...
分类: 其它 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.

无觅相关文章插件,快速提升流量