ssh命令立即返回通过管道传输到文件,但是如果只是发送到变量则不返回

时间:2016-10-17 13:22:08

标签: linux bash ssh

我遇到了一个使ssh调用的脚本问题。我希望脚本等待远程命令完成。当我将输出分配给变量时,它会这样做:

 command=($(ssh -f user@host "cd <dir>; start_script.sh))

问题是当我回显$命令时,看起来每个单词都在一个单独的行上,但所有输出都在变量中。

当我向文件添加管道时,它不再等待命令完成,而是立即将控制权返回给本地脚本。

 command=($(ssh -f user@host "cd <dir>; start_script.sh >> file.txt))

当我捕获文件时,只有一小部分输出在文件中。

如何让本地脚本等待远程脚本完成并逐行获取输出?

0 个答案:

没有答案