【发布时间】:2020-06-02 18:00:15
【问题描述】:
以下是使用heredoc 的ssh 脚本示例(实际脚本更复杂)。是否可以在 SSH heredoc 或命令中同时使用本地和远程变量?
FILE_NAME 设置在本地服务器上以在远程服务器上使用。 REMOTE_PID 在远程服务器上运行时设置为在本地服务器上使用。 FILE_NAME 在脚本中被识别。 REMOTE_PID 未设置。
如果将EOF 更改为'EOF',则设置REMOTE_PID 而未设置`FILE_NAME。我不明白这是为什么?
有没有一种方法可以同时识别REMOTE_PID 和FILE_NAME?
正在使用 bash 的第 2 版。默认远程登录为cshell,本地脚本为bash。
FILE_NAME=/example/pdi.dat
ssh user@host bash << EOF
# run script with output...
REMOTE_PID=$(cat $FILE_NAME)
echo $REMOTE_PID
EOF
echo $REMOTE_PID
【问题讨论】: