このスクリプトがあります。
#!/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