<ssh> リモートに入らずコマンド実行。

sshで、リモートremotoに入らずコマンドcommand実行する。

ぐぐると、ssh hage@hage.server.com "command"でいけるとあったが、動かない。
-vオプションでデバックモードに入るらしいので、やってみた。

>ssh -v hage@hage.server.com
OpenSSH_7.1p2, OpenSSL 1.0.2h  3 May 2016
debug1: Reading configuration data /etc/ssh/ssh_config
:
:
debug1: Entering interactive session.

interactive???
これだとキー入力を期待してないかい???

で、ググると、あったー。

>echo "ls -l" | ssh hage@hage.server.com

でいいらしい。 にゃるほど。

せっかくなので、function()を設定する。

function sc()
{
    echo "$*" | ssh hage@hage.server.com
}

これでいつでもリモートのコマンド実行し放題。

参考サイト。

入門OpenSSH / 第7章 うまくいかない時は

superuser.com