#keywords(SSH,リダイレクト,公開鍵認証,authorized_keys)
 #floatcontents
 * SSH経由でコマンドを実行する [#w9b925ed]
 あまり使う機会はないかもしれませんが、SSH経由でコマンドを実行するためのメモ。
 
 ** コマンドを実行する [#d01425b1]
 通常sshでログインする際には、
  % ssh dobuo@foo
 という感じで使用すると思いますが、その後ろにコマンドを続けることでリモートサーバでコマンドラインを実行することができます。もちろんユーザー名が同じなら@以前(dobuo@)を省略できます。
  % ssh dobuo@foo date
  dobuo@foo's password:
  2011年  6月  7日 火曜日 09:52:38 JST
 こんな感じ。リダイレクトでローカルファイルに出力することも可能です。
  % ssh dobuo@foo date > date.txt
 でdate.txtに書き込まれます。
 
 ** ローカルファイルのリダイレクト [#sa39ccdd]
 コマンドを実行できるのであればリダイレクトを使いたいこともあると思います。~
 ここではローカルのlocal.txtをリダイレクトしてリモートのremote.txtに書き出すことをしてみます。
  % ssh dobuo@foo 'cat > remote.txt' < local.txt
 ポイントはcatからのリダイレクト文をクォートで囲むこと。これをしないと結局ローカルのファイルにリダイレクトされてしまいます。この例の場合、''cat > remote.txt''がリモートのコマンドラインで実行されます。
 
 #classdiv(box-yellow)
 *** 応用例:id_rsa.pubをauthorized_keysに追加 [#zdf4ab61]
 SSHで公開鍵認証をするときに公開鍵id_rsa.pubをauthorized_keysに追加しますが、これも上記の方法で行うことができます。
  % ssh dobuo@foo 'cat >> .ssh/authorized_keys' < .ssh/id_rsa.pub
 これでリモートの.ssh/authorized_keysに公開鍵が追加されました。リモートでのリダイレクト''>>''を間違えないようにしましょう。~
 なお、.ssh/authorized_keysのファイルパーミッションは''600''にしておきます。新規作成の場合は注意。
 #classdiv(end)
 
 ** SSHのid_rsa.pubをOpenSSLのキーから作成する [#k02b3744]
  % ssh-keygen -y -f newkey.pem
 で作成される