我有这个脚本:
#!/bin/bash
ssh server bash -c "'
if [[ "\$?" -ne "0" ]]; then
PRINT="N"
echo \${PRINT}
else
PRINT="Y"
echo \${PRINT}
fi
'"
echo $PRINT
但是本地的 $PRINT 是空的,如何将这个变量从远程传递到本地?
谢谢!
答案1
删除远程服务器上另一个 bash 进程的脱壳,然后将完整的命令输出读取到变量中(在本例中为 resp)
#!/bin/bash
resp=$(ssh server '
if [[ "\$?" -ne "0" ]]; then
PRINT="N"
echo \${PRINT}
else
PRINT="Y"
echo \${PRINT}
fi')
echo $resp