找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 56423|回复: 15

[代码合集] [已解决]批处理如何把命令赋给变量并执行变量把结果返回此变量

[复制链接]
发表于 2010-11-4 22:02:24 | 显示全部楼层 |阅读模式
我的问题如下:set a=某一个命令;执行a之后,返回命令的结果再赋值到变量a中。该怎么写?

[ 本帖最后由 jdzms23 于 2010-11-10 16:24 编辑 ]

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2010-11-4 22:24:02 | 显示全部楼层
条件太少,具体什么命令呢?
 楼主| 发表于 2010-11-4 23:11:46 | 显示全部楼层

回复 2楼 的帖子

例如命令为hostname
 楼主| 发表于 2010-11-4 23:12:07 | 显示全部楼层
在线等啊  大哥们帮帮忙
发表于 2010-11-4 23:18:18 | 显示全部楼层
  1. for /f "delims=" %%i in ('hostname') do set a=%%i
  2. echo %a%
复制代码
 楼主| 发表于 2010-11-4 23:21:21 | 显示全部楼层

回复 5楼 的帖子

用for语句可以。不过用for语句已经被客户指摘了。还有别的方法吗?多谢啦
发表于 2010-11-4 23:29:45 | 显示全部楼层
用一个文件中转
  1. @echo off
  2. hostname>aa
  3. set/p a=<AA
  4. del aa
  5. echo %a%
  6. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
jdzms23 + 1 乐于助人

查看全部评分

发表于 2010-11-4 23:30:04 | 显示全部楼层

回复 6楼 的帖子

什么是“指摘”?
客户为啥“指摘”?
 楼主| 发表于 2010-11-4 23:31:04 | 显示全部楼层

回复 8楼 的帖子

指摘就是客户认为那代码质量有问题 希望能用更好的代码
 楼主| 发表于 2010-11-4 23:38:31 | 显示全部楼层

回复 7楼 的帖子

刚才我运行了 可以,多谢了!!
发表于 2010-11-5 00:58:35 | 显示全部楼层
想到一个更好的,现在手机上网不方便写代码。明天电脑上线时公布
发表于 2010-11-5 11:13:21 | 显示全部楼层

回复 9楼 的帖子

客户有什么测试结果来证明代码质量有问题吗?还是客户一拍脑袋就说有问题?
发表于 2010-11-5 16:18:52 | 显示全部楼层
原帖由 broly 于 2010-11-5 00:58 发表
想到一个更好的,现在手机上网不方便写代码。明天电脑上线时公布

  1. @echo off
  2. set a=str
  3. set a=%a:str=&hostname%
  4. echo %a%
  5. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2010-11-9 07:41:01 | 显示全部楼层

回复 13楼 的帖子

有点不明白的地方,就是退格符前也没有字符,那么在这里它是干什么的呢?
发表于 2010-11-9 09:51:39 | 显示全部楼层
变量的替换如果要加上命令,就要用到&这个字符,但你不能前面不加字符串就用&。所以要用上一个不影响输出的字符,退格键就是最好的选择
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 00:29 , Processed in 0.029527 second(s), 11 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表