ちょっとしたファイルの転送に便利な SimpleHTTPServer

サーバ間でちょっとしたファイルの受け渡しをしたいことはよくあると思う。
そういうときには scp とか rsync とかを使ったりすると思う。
だけど ssh がそのサーバ間で許可されてなかったり、ケツスラッシュとかを気にしたりしなくてはならなかったりして意外とダルい。
あとは netcat とかあるけど日常的に使わないから毎回使い方調べたりしなくてはならなくて*1ダルい。

そこで SimpleHTTPServer ですよ

たぶんみんな知ってて普通に使ってるんじゃないかなと思ったけど、たまたま同僚のおじさんが 3 人連続で知らなくて俺が教えてあげるみたいな機会があったからこのブログにも書いておこうと思う。

SimpleHTTPServer とは

python の簡易WEBサーバ。
コマンドラインから起動すると、カレントディレクトリ以下が DocumentRoot になる。

起動方法

いずれの場合も第一引数で任意のポート番号を指定できる。デフォルトは 8000

  • python 2 系
$ python -m SimpleHTTPServer
  • python 3 系
$ python -m http.server

送りたいファイルのあるディレクトリに cd して SimpleHTTPServer を起動すれば、受け取らせたいサーバ側から wget などでカンタンにファイルを取得出来る。超便利。
ssh できるかとかケツスラッシュとかを気にしたりしなくていいし、どっか適当に空いてて疎通が取れるポートがあればいいだけ〜。最高。

*1:わたしだけですかね。そうですね。