私はリモートマシン上でいくつかのコマンドを実行する必要があり、ローカルマシン上にこのようなスクリプトを書いています。
リモートサーバで複数のコマンドを実行して出力を取得する方法は?
私はローカルマシン上でdocker images
を取得していますが、これらのイメージがリモートサーバーに存在するかどうかを確認する必要があります。
ローカルマシンに既存のドッカーイメージ(リモートサーバー)を追加する必要があります。そのために私は下記のコードを使用しましたが、それは私のためには機能しませんでした。
#!/bin/sh
declare array=$(docker images)
sshpass -p 'password' ssh -t [email protected] << EOF
declare List=""
while read -r line; do
if [ -z $(docker images -q $line) ]; then
List="$List $line"
else
continue
fi
done <<< "$array"
EOF
リスト変数を自分のローカルマシンに追加します。
この問題についてお手伝いできますか?
ご協力いただき誠にありがとうございます。
よろしくお願いいたします。
なぜ、 'echo" $ List "ではないのですか? –
私はそれが画面に印刷エコーを行う場合。どのように私はそれをさらに使用するために私のローカルマシン内のいくつかの変数にキャプチャすることができます。 – kala
'sshpass -p 'password' ssh -t [email protected]> local_file << EOF ...' –