Linux 执行多级shell脚本并从远程计算机获取响应

Linux 执行多级shell脚本并从远程计算机获取响应,linux,bash,shell,ssh,remote-access,Linux,Bash,Shell,Ssh,Remote Access,我有两个shell脚本,比如 mem.sh RESULT=$(awk {print} /proc/meminfo) r="$(./test.sh)" RESULT="$RESULT$r" echo ${RESULT#* } exit ${RESULT%% *} echo "HI" test.sh RESULT=$(awk {print} /proc/meminfo) r="$(./test.sh)" RESULT="$RESULT$r" echo ${RESULT#* } exit ${RE

我有两个shell脚本,比如

mem.sh

RESULT=$(awk {print} /proc/meminfo)
r="$(./test.sh)"
RESULT="$RESULT$r"
echo ${RESULT#* }
exit ${RESULT%% *}
echo "HI"
test.sh

RESULT=$(awk {print} /proc/meminfo)
r="$(./test.sh)"
RESULT="$RESULT$r"
echo ${RESULT#* }
exit ${RESULT%% *}
echo "HI"
当我在本地执行mem.sh时,它将打印内存信息,后跟HI,不会出现任何错误,但我需要在远程机器上执行该脚本,我的操作如下所示

cat mem.sh | ssh user@ip  >> result.txt
我犯了这样的错误

unexpected EOF while looking for matching `"'
syntax error: unexpected end of file
我找不到解决方案,请帮我解决这个问题,或者有没有办法

问题#2:有没有办法在远程机器上执行多个shell脚本(在本地机器上可用)


我使用的是linux机器。

看看这个-如果不将本地脚本发送到远程机器,就不能在远程机器上运行本地脚本。你会因为这个脚本而得到错误吗?远程主机上的默认shell是什么?尝试一个更简单的脚本,看看是否可以正常工作。然后试着在
mem.sh
中注释行,直到找出哪一行被破坏(尽管在我看来它们都不是)。您的
exit
命令已中断,但它不会为
exit
提供数值。是@EtanReisner,我也尝试过不退出。它给出了相同的响应。是的,
exit
不会导致报价问题,这只是脚本的另一个问题。你能显示hextump-cmem.sh的输出吗?