无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 4618|回复: 10
打印 上一主题 下一主题

[已解决] 变量相关

[复制链接]
跳转到指定楼层
1#
发表于 2013-12-20 21:15:25 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 1549957235 于 2013-12-24 09:36 编辑

set myvar=%@root%
set myvar=%@roo^t%
第一个保存的是%@root%字符串
第二个保存的是根设备  对吗?
2#
 楼主| 发表于 2013-12-21 13:50:53 | 显示全部楼层
sratlf 发表于 2013-12-21 12:32
正好相反  第一个是根设备  第二个是字符串  加^可以防止变量被扩展

保存为字符串依然具有变量效果是吗?  你看看下面这个是对的吗?
iftitle [find --set-root --devices=h /bootmgr && call set bootmgr=%@root^%] load BOOTMGR of Windows VISTA/WIN7/WIN2008 on %bootmgr%

chainloader %bootmgr%/bootmgr



那bootmgr=%@root^%替换为bootmgr=%@root%也没有影响吧

点评

保存成字符串就没有效果了 命令没什么问题 将bootmgr=%@root^%替换为bootmgr=%@root%那命令就不一定起作用了 因为在执行find --set-root --devices=h /bootmgr && call set bootmgr=%@root%之前 %@root%已  详情 回复 发表于 2013-12-23 09:27
回复

使用道具 举报

3#
 楼主| 发表于 2013-12-24 09:33:51 | 显示全部楼层
本帖最后由 1549957235 于 2013-12-24 09:35 编辑

谢谢两位,通过实际测试我也理解了。
命令行执行时是将整行输入执行的,对于这一行命令:iftitle [find --set-root --devices=h /bootmgr && call set bootmgr=%@root^%]
先进行查找和赋值,最后刷新变量。
不管是缺少了call  还是将%@root^%改为%@root%  %bootmgr%显示的都是(ud)
回复

使用道具 举报

4#
 楼主| 发表于 2013-12-24 17:02:26 | 显示全部楼层
sratlf 发表于 2013-12-24 14:45
不复杂  有的时候必须用call  不能用&;  

&;前命令为真的话表示后续命令都可执行  有时会出现逻辑错误

还有这种事
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-6-13 09:20

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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