无忧启动论坛

标题: echo >> 写入问题? [打印本页]

作者: hotdll    时间: 2011-10-15 22:59
标题: echo >> 写入问题?
解决办法:echo Strings 两个空格 >> 目标文件
-------------------------------------------------原问题----------------------------------------------------
简化后的问题:
echo d1 = "NVIDIA RAID DRIVER (SCSI)",\disk1,\ >> (0)/txtsetup.tmp
这句不能执行

echo RAIDCLASS = "NVIDIA RAID Driver (required)" >> (0)/txtsetup.tmp

echo BUSDRV = "NVIDIA nForce Storage Controller (required)" >> (0)/txtsetup.tmp

但是这两句执行却可以。

这是什么情况?

补充: g4d版本10-09的版本。

echo 后面的字符串是动态生成的。我没办法添加转义字符。

[ 本帖最后由 hotdll 于 2011-10-16 10:49 编辑 ]
作者: hotdll    时间: 2011-10-15 23:15
C大,Z大,不点大大指点下。
这个完成了。我的F6IMG就算是第一阶段完成了。
作者: chenall    时间: 2011-10-15 23:29
\是转义符。。。

转义后面的字符。

然后....
作者: 快雪时晴    时间: 2011-10-16 00:49
标题: 回复 #1 hotdll 的帖子
echo -e d1 = "NVIDIA RAID DRIVER (SCSI)",\\disk1,\\ >> (0)/txtsetup.tmp
作者: zxw    时间: 2011-10-16 01:22
标题: 回复 #3 chenall 的帖子
这应该是个bug吧,楼主并没有使用-e参数。
作者: hotdll    时间: 2011-10-16 08:15
标题: 回复 #3 chenall 的帖子
但是
echo id = "SCSI\NVIDIA__Raid_Disk________","nvrd32" >> (0)/txtsetup.oem
这句正常。
作者: hotdll    时间: 2011-10-16 08:16
echo -e 这句是转义
但是我并没有使用转义命令。
不写入输出正常。写入错误。
作者: hotdll    时间: 2011-10-16 08:24
补充下,版本是10-09的版本
作者: chenall    时间: 2011-10-16 09:25
这不是BUG,正常的,命令处理程序根本不知你有没有加-e参数,即使加了它也不知道你这个是要转义的。

统一按转义的方式处理。

经过处理之后会发现>>和前面的字符是连接在一起的(命令处理程序碰到\时直接跳过下一个字符),所以这个>>就无效了。

>>前多加一个空格就行了。
作者: hotdll    时间: 2011-10-16 10:45
谢谢C大指点
解决了。




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3