Raspberry Pi上でRubyファイルの実行
RUbyのファイルの1行名に
1
#!/usr/bin/ruby
(シェバン)
があるが、それがあると
test.rbを実行するのにホームディレクトリ上で
1
ruby test.rb
でも起動するが、
1
/home/pi/test.rb
だけで起動する。
ファイル名のtest.rbはtestでもいい。Linuxは拡張子で判断していない。
実際やってみると以下のことでハマった。
1
2
#!/usr/bin/ruby
puts"Ruby start"
をなぜか1行目は空白で、2行名から書いていたので、ファイルが実行できず。1行名から書く。
ruby test.rbは、実際はファイルの位置を明記して
1
/home/pi/test.rb
として実行する。最初にrubyと書かなくていい。
もしくは、
1
./test.rb
で実行。
.はホームディレクトリをさす。
test.rbではなく、./test.rbと打たないといけないのは
ホームディレクトリにパスが通っていないから。
本当はtest.rbと打ちたいですが
ホームディレクトリにパスを通すと危険だそうです。
参考
カレントディレクトリのプログラムを実行するには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/040execcaprog.html
変数pathにカレントディレクトリを含める方法(あまりよくない)
http://www.not-enough.org/abe/manual/comm/command-path.html