我一直在努力尝试在构建机器上构建源代码的复杂过程,然后将编译后的图像文件传输到我的嵌入式ARMv7设备中以进行闪存。每一步本身都很容易用标准的Linux Shell脚本自动化,但是当试图在一个巨大的脚本中做所有事情时,事情就会变得复杂。到目前为止,我一直使用expect-lite来完成这项工作,除了现在遇到问题之外,这项工作正在进行。当传输图像在我的预料,精简版的代码如下所示:有没有办法在派生命令中使用Expect-Lite变量?
$imageDestination="/the/destination"
$imageSource="/the/source/"
>sftp $userName'@'$buildMachine
>$password
>get $imageSource'/'x-load_sdcard.bin.ift $imageDestination'/'MLO
>echo "Finished"
>bye
如果你知道一件事或两个关于预计,精简版,那么你就会知道,上面的变量将被读作“壳“变量。问题是,据我所知,SFTP不允许使用变量。有没有办法告诉expect-lite使用预定义变量而不是尝试使用“Shell”变量?或者,是否有一些切肉刀的方式来解决这个限制而不删除变量?
非常感谢所有帮助。