SSHを介してサーバーに接続し、コマンドを実行し、制御権をユーザーに返します。

SSHを介してサーバーに接続し、コマンドを実行し、制御権をユーザーに返します。

SSHコマンドでこのような操作をどのように実行できますか?

echo << EOF
echo "Choose a file:" *
read f
rm -r "$f"
EOF | ssh user@host

使用できます-tt(はい二つreadt's)sshを使用するとstdinからsshを読み取ることができますが、操作は許可されていないようです。

これを行う方法はありますか?

ベストアンサー1

例のコマンドを正しく理解すると、次のように動作します。

ssh user@host 'echo "Input something:"; read VAR; echo "Got: $VAR"'              

この方法は、「ホスト」がsshArch Linuxノートブックで実行されているSlackware Linuxサーバーの場合に機能します。 Slackwareサーバーの私のシェルはzsh 4.2.6(i486-slackware-linux-gnu)です。read内蔵シェルなのでシェルの選択も関係ないかなと思います。

おすすめ記事