ssh:执行几个命令

时间:2015-04-02 13:32:57

标签: shell ssh

当我尝试通过server_remote中的ssh运行多个命令时,第三个命令返回本地服务器的结果。 例如:

ssh remote_server "cd $LOGPATH ; ls -ltr logProgram1* | tail -1"

重新映射到本地$ LOGPATH并且不会从remote_server返回结果。

1 个答案:

答案 0 :(得分:0)

您需要引用以将$ LOGPATH传递给远程shell。现在它只是在本地扩展$ LOGPATH并将其发送出去。

ssh remote-server "cd \$LOGPATH ; ls ....."

可能会更好。

请注意。您的环境可能不是您期望的环境,因为您的shell init脚本文件不一定与交互式登录shell类似地处理。首先检查环境,确保$ LOGPATH符合预期。

ssh remote-server env
如果您需要调试,

会很有帮助。