我正在尝试在 heredoc 中将其输出设置为局部变量,如下所示:
REMOTE_OUTPUT=$(ssh remote@server /bin/bash << EOF
find my/path/ -type f -not -path my/path/*/ -type f -mtime -0 | while read filename; do
if grep "ERROR" $filename; then
filenamebase=$(basename "$filename")
echo -e "\n----------------------------------------------------------\n\n$filenamebase failure:\n"
grep -n "ERROR" "$filename" | sed G
fi
done
EOF)
Run Code Online (Sandbox Code Playgroud)
但是即使 find&grep 循环正确并且确实应该返回输出,该变量仍然为空。
(否则我也有兴趣将 heredoc 的输出写入本地文件。)