SSH内でエクスポートを使用し、スクリプト内でグローバルに値を使用します。

SSH内でエクスポートを使用し、スクリプト内でグローバルに値を使用します。

次のコマンドを実行するとき:

ssh -q -o BatchMode=yes -T <server> <<'EOF'
export INTIAL_COUNT=$(ps -ef|grep -v grep|grep "/bin/ksh /test/bin/worker.sh" |wc -l)
EOF

echo ${INTIAL_COUNT}

私が得る出力は空です。

予想される出力は特定の値です。

echo ${INTIAL_COUNT}
10

ベストアンサー1

努力する

INTIAL_COUNT=$(ssh -q -o BatchMode=yes -T <server> <<'EOF'
ps -ef|grep -c "/bin/ksh /test/bin/[w]orker.sh" 
EOF
)

どこ

  • grep -v grepgrep [w]自分と一致しないものに置き換えられます。
  • grep ... | wc -lに置き換えられますgrep -c
  • $( .. )構成は線にまたがる可能性があります。

または

INTIAL_COUNT=$(ssh -q -o BatchMode=yes -T <server> 'ps -ef|grep -c "/bin/ksh /test/bin/[w]orker.sh"')

短いです。

おすすめ記事