在做dnw menu的时候遇到的,当时的命令是这样的:strcpy(cmd_buf,"dnw 0xc0008000; nand erase 0x600000 0xFE000; nand write.yaffs 0xc0008000 0x600000 $filesize");这条命令在手动在终端输入是没有问题的,但是用run_command来调用的时候问题说:NAND write: '$filesize' is not a number,就是这个环境变量有问题!我的天,我echo打印的时候也是可以的:
SMDKV210 # echo $filesize
8c40000
SMDKV210 #
真是邪门!最后在字符串中改为$(filesize)就可以了,但是这个手动在终端输入是不可以的!
SMDKV210 # echo $(filesize)
$(filesize)
SMDKV210 #
这个环境变量不知道是怎么解读的!问题是解决了,原因未知。