• 締切済み

rubyのファイルを実行できません。

 Debian(Woody)の環境です。 #find ./ -name ruby ./usr/bin/ruby ./usr/share/doc/ruby ./usr/doc/ruby ./usr/lib/ruby があり、/usr/binにrubyのファイルが確認できます。 $ruby -v ruby 1.6.7 (2002-03-19) [i386-linux] が出ます。pathが通っています。 $ ruby -e 'print "hello World\n"' で hello World もちゃんどでます。 しかし、vi hello.rbで、中には ------------------- #!/usr/bin/ruby print "Hello World!\n" --------------------- と、実行権-rwxr-xr-xにします。 %hello.rb では: bash: hello.rb: command not found が出て,実行できませんでした。 ファイルの中に、#!/usr/lib/rubyに代えてもおなじでした。  因みに %env で ... PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11 ... がでます。  アドバイスをよろしくお願いします。

  • namune
  • お礼率55% (149/268)
  • CGI
  • 回答数3
  • ありがとう数0

みんなの回答

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.3

このカテゴリーで質問しているという事は、hello.rbを ApacheからCGIとして実行させたいのでしょう。 >%hello.rb >では: これでは、単なるコンソールからのスクリプト実行方法なので、 おそらくカレントディレクトリにパスが通っていないのでしょう。 # ./hello.rb なら、とりあえず実行できると思いますが、いずれにせよ 基本中の基本が理解できていないようですので、もう少し勉強しましょう。

回答No.2

>アドバイスをよろしくお願いします。 ではアドバイスです。 何をやりたいのかわかりません。 頭の中を整理しましょう。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

CGIと関係ないような。

参考URL:
http://itpro.nikkeibp.co.jp/linux/faq/200003-3.shtml

関連するQ&A

  • rubyがInternalServerError

    こんばんは。 自鯖にて初めてrubyを動かそうとしたところInternalServerError(500エラー)が帰ってきます。 まず、httpd.confに ---------------------- AddHandler cgi-script .cgi .rb ---------------------- と追加しました(このため.htaccessは作成しなくていいと思う)。 コマンドラインにて[which ruby][whereis ruby]を使い、[/usr/bin/ruby]にrubyがあることはわかるのですが、エラーが出てしまいます。 [test.rb] ---------------------- #!/usr/bin/ruby print "Content-type: text/html\n\n" print "test" ---------------------- 上記プログラムには755のパーミッションを与えています。 上記のフォルダにはCGI実行権が与えられています。 上記のフォルダではCGIはしっかりと動きます。 上記のプログラムはコマンドライン上[ruby test.rb]では動きます。 また、他のサイトもいろいろ調べましたが #!/usr/bin/env ruby #!ruby #!/usr/local/bin/ruby どのいパスでもエラーがでました。 解決方法を教えてください。 サーバ ---------------------- CentOS 5.4Final Apache 2.2.3 Ruby 1.8.5 ----------------------

  • Ruby

    #!/usr/local/bin/ruby class Foo def []=(x,y) print "Hello,",x,y,"!\n" end end bar = Foo.new bar["wor"] = "ld" 上記実行結果は Hello world! になるのですが、これが理解できません。 上手く説明してくれませんか?

  • rubyにてhello worldを表示させたいの

    rubyにてhello worldを表示させたいのですがNo such file or directory -- hello_world.rb (LoadError)と出てきて困ってます。解決策がわかりましたらご教示願えますでしょうか? macにてrubyのプログラミングを始めようとしているものです。 下記サイトを参照しつつ同じように行い環境構築をいたしました。 (バージョンは最新のにしました。) http://pplog.org/?p=1845 まず手始めにhelloworldという文字の表示をしたく下記サイトを参照しつつ hello_world.rbというファイルを作りました。 http://www.atmarkit.co.jp/ait/articles/1402/27/news042_2.html -------- #!/usr/bin/env ruby # encoding: utf-8 puts "Hello World!" -------- その後、ターミナルで下記の通り入力し、実行しました。 ruby hello_world.rb しかし、helloworldとでずにNo such file or directory -- hello_world.rb (LoadError) という文字が出ました。 ※原因が「hello_world.rb」ファイルの#にあるのかと考え#抜きのソースも入力し実行しましたがダメでした。 何が原因であるのかわからず途方に暮れております。 環境構築は同じステップをふみ再確認しましたが、問題がないようです。 「hello_world.rb」ファイルはFinderの「書類」という項目の中に格納致しましたが、 ここに原因があるのでしょうか? ネットで原因を調べてもよくわからず困っております。 もしわかる方がおりましたら、解説願えますでしょうか? こんな初歩的なところで躓いているようでは適正はないのかもしれませんが、 どうか宜しくお願いします。 説明不足の点があるかと思いますので、ご指摘を受けましたら、 追記致します。

  • Ruby vim 実行の仕方

    Rubyをvimで書いたので、実行しようとしたのですが、実行できないです。何がダメなのでしょうか? 手順としては、 vimで puts("Hello World!")と書きました。 w hello_ruby.rbと書いて保存しました。 コマンドプロンプトを開いて、hello_ruby.rbと入れて、Enterを押したのですが、 ’hello_ruby.rb’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出ます。 コマンドプロンプトで、ruby -v と入れると、Rubyのバージョンは出てきます。 何がいけないのでしょうか?修正の仕方を教えてください。 詳しい方いらっしゃいましたら、よろしくお願い致します。

    • ベストアンサー
    • Ruby
  • ruby on rails チュートリアル

    ruby on rails tutorial(http://railstutorial.jp/chapters/beginning?version=4.2#cha-beginning)をクラウド9で勉強し始めましたが、rails s -p /PORT -b /IPでサーバーを起動させようとすると、 /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/server.rb:12:in `parse!': invalid argument: -p /PORT (OptionParser::InvalidArgument) from /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/server.rb:315:in `parse_options' from /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/server.rb:190:in `options' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/server.rb:71:in `set_environment' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/server.rb:55:in `initialize' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:75:in `new' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:75:in `server' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:39:in `run_command!' from /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.4/lib/rails/commands.rb:17:in `<top (required)>' from /home/ubuntu/workspace/hello_app/bin/rails:8:in `require' from /home/ubuntu/workspace/hello_app/bin/rails:8:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/client/rails.rb:28:in `load' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/client/rails.rb:28:in `call' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/client/command.rb:7:in `call' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/client.rb:28:in `run' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/bin/spring:49:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/binstub.rb:11:in `load' from /usr/local/rvm/gems/ruby-2.2.1/gems/spring-1.4.0/lib/spring/binstub.rb:11:in `<top (required)>' from /home/ubuntu/workspace/hello_app/bin/spring:13:in `require' from /home/ubuntu/workspace/hello_app/bin/spring:13:in `<top (required)>' from bin/rails:3:in `load' from bin/rails:3:in `<main>' このようなエラーがでてしまうのですが、どなたか解決方法を教えていただけないでしょうか? プログラミング超初心者で、自分では解決できそうにありません。 よろしくお願いします。

    • ベストアンサー
    • Ruby
  • RubyとMeadow(Emacs)について

    RubyとMeadow(Emacs)について 自分のパソコンにRubyとMeadowをインストールしたんですが、 Meadowでソースプログラムを作ってからコマンドプロンプトでそれを実行しようとすると ’ruby’は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出てきてしまいます。 どうすれば実行できるのでしょうか? 教えていただきたいです。 ちなみにこれは夏休みの宿題で、 プリントに書かれていたとおりにやりました。 間違いがないか自分でなんども確認しましたが、 たぶん書いてあることは間違っていないと思います。 どのようにやったかというと、 Meadowでhello.rbというファイルに print("Hello, Ruby World !\n") と打ち込み、c:\progIに保存。 コマンドプロンプトを開いて progIに移動し、 ruby hello.rb →[Enter] です。

    • ベストアンサー
    • Ruby
  • ruby on railsに関して

    ruby on rails を独学で勉強しようと思い、 「基礎ruby on rails」を用いて、rubyやrailsなどをPCにダウンロードしたのですが、 rubyのバージョンが1.8.7だったので、 自分なりに調べてバージョンを1.9.3にしようとしたのですが、 再起動をするとどうしてもruby1.8.7になってしまいます。 しかたないと思って、1.8.7のまま、 「rails s」のコマンドを実行したら、 ターミナルに ↓ ーーーーーーーーーーーーーーーーーーーーーーー /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:230:in `activate': can't activate rack (~> 1.4.5, runtime) for ["actionpack-3.2.13", "railties-3.2.13"], already activated rack-1.5.2 for ["rack-ssl-1.3.3", "railties-3.2.13"] (Gem::LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:246:in `activate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `each' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `activate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:246:in `activate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `each' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `activate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:1056:in `gem' from /usr/bin/rails:18 ーーーーーーーーーーーーーーーーーーーーーーー このようなログがでてきました。 調べても内容が分からないので、 分かる人がおりましたら、 どのように対処をすればよいのかを教えていただけると幸いです。

  • pythonでprint実行でsyntaxer..

    print "hello"と入れて実行するとsyntaxerrorになってしまいます。 上に#!/usr/bin/env pythonと付けて実行しているのでが、ここがおかしいような? アドバイスいただけないでしょうか?

  • rubyでパケットキャプチャ出来るプログラムを実行したところ、以下のよ

    rubyでパケットキャプチャ出来るプログラムを実行したところ、以下のようなエラーメッセージが出力されました。 上位4つのwaraningとno suitable device foundのエラーを回避する策を教えて頂きたいです。 $ ruby packet.rb /usr/local/lib/site_ruby/1.8/i486-linux/pcap.so: warning: do not use Fixnums as Symbols /usr/local/lib/site_ruby/1.8/i486-linux/pcap.so: warning: do not use Fixnums as Symbols /usr/local/lib/site_ruby/1.8/i486-linux/pcap.so: warning: do not use Fixnums as Symbols /usr/local/lib/site_ruby/1.8/pcaplet.rb:41:in `lookupdev': no suitable device found (Pcap::PcapError) from /usr/local/lib/site_ruby/1.8/pcaplet.rb:41:in `initialize' from packet.rb:12:in `new' from packet.rb:12 プログラムは、以下のサイトにあるものを利用しています。 http://d.hatena.ne.jp/tullio/20080217/1203261760 #!/usr/local/bin/ruby require 'pcaplet' include Pcap class Time # tcpdump style format def to_s sprintf "%0.2d:%0.2d:%0.2d.%0.6d", hour, min, sec, tv_usec end end pcaplet = Pcaplet.new pcaplet.each_packet { |pkt| print "#{pkt.time} #{pkt}" if pkt.tcp? print " (#{pkt.tcp_data_len})" print " ack #{pkt.tcp_ack}" if pkt.tcp_ack? print " win #{pkt.tcp_win}" end if pkt.ip? print " (DF)" if pkt.ip_df? end print "\n" } pcaplet.close 以上、宜しくお願い致します。

  • レンタルサーバーでrubyプログラムが動きません

    レンタルサーバーでrubyプログラムをアップロードしても画像のような?マークが出て認識してくれないようです。 どのようにすれば動くようになりますでしょうか。 アップロードした時の条件は以下のとおりです。 FTTPでアップロード 転送モード:アスキー転送モード 転送時のファイル拡張子・・・.rb #!/usr/local/bin/rubyを最初に記述(レンタルサーバーページの指定通り) 転送後のパーミッション:705 その他に何をすればよいかわかりまん。 教えていただけませんでしょうか。 ちなみにコードは下記のような簡単なものです。 #!/usr/local/bin/ruby print "Content-Type: text/html\n\n" print "hello!" よろしくお願いいたします。

    • ベストアンサー
    • Ruby

専門家に質問してみよう