読者です 読者をやめる 読者になる 読者になる

Fight the Future

何かを始めたら、半分成功したのと同じ

RubyのワンライナーでWebサーバを起動する

参考にさせていただいたサイト
コマンド1つで今すぐWebサーバを起動させるためのワンライナー(Ruby or Python) - RX-7乗りの適当な日々
http://d.hatena.ne.jp/rx7/20090812/p1

$ ruby -rwebrick -e 'WEBrick::HTTPServer.new({:DocumentRoot => "./", :Port => 10080}).start'

けど、これまたあのOSだとエラーになる。

それらのシェルではシングルクォートでくくられた部分をひとかたまりとみなし,その中身についてシェルに対する指定としては解釈しないためです。しかし,cmd.exeはそれらのシェルとは異なり,シングルクォートに対する特別扱いは存在しません。そのため,上記のようなエラーになってしまいます。

http://gihyo.jp/dev/serial/01/ruby/0010

なので、Windowsだとシングルクォートにする。

$ ruby -rwebrick -e "WEBrick::HTTPServer.new({:DocumentRoot => './', :Port => 10080}).start"
[2011-05-31 21:06:13] INFO  WEBrick 1.3.1
[2011-05-31 21:06:13] INFO  ruby 1.9.2 (2010-08-18) [x64-mswin64_80]
[2011-05-31 21:06:13] WARN  TCPServer Error: not a socket file descriptor
[2011-05-31 21:06:13] INFO  WEBrick::HTTPServer#start: pid=800 port=10080