我遇到了一个使ssh调用的脚本问题。我希望脚本等待远程命令完成。当我将输出分配给变量时,它会这样做:
command=($(ssh -f user@host "cd <dir>; start_script.sh))
问题是当我回显$命令时,看起来每个单词都在一个单独的行上,但所有输出都在变量中。
当我向文件添加管道时,它不再等待命令完成,而是立即将控制权返回给本地脚本。
command=($(ssh -f user@host "cd <dir>; start_script.sh >> file.txt))
当我捕获文件时,只有一小部分输出在文件中。
如何让本地脚本等待远程脚本完成并逐行获取输出?