打开主菜单

← Interactive Ruby | Strings →

最經典的 "hello world" 程式是Ruby入門的最佳範例!

目录

Hello world编辑

建立一個名為hello-world.rb的文字檔,內容如下:

puts 'Hello world'

現在在Shell內執行它:

$ ruby hello-world.rb
Hello world

你也可以不透過建立新檔就執行"hello world"程式,這叫做一行文

$ ruby -e "puts 'Hello world'"
Hello world

你可以透過irb執行這段程式碼,可是輸出結果看起來會有點不一樣,puts會輸出"Hello world",但是irb還會顯示puts的回傳值 – 就是nil

$ irb --simple-prompt
>> puts "Hello world"
Hello world
=> nil

nil在其他的程式語言中,叫做null或者NULL,也就是"空"。

註解编辑

就像是Perl, Bash, 跟 C Shell,Ruby使用#來當做註解符號。任何用#開頭的字串都會被Ruby編譯器忽略,舉個例子,這是有註解的hello-world.rb程式

# 我的第一個Ruby程式

puts 'Hello world'

你可以在一行程式碼的後面加上註解;任何在#之前的東西都被當成是一般的Ruby程式碼。

puts 'Hello world'                # 輸出 "Hello world"

Ruby 只支援如上例般註解在同一列. 並不支援如同 C, C++, and Java 語言般的 /* ... */區塊註解. Ruby也可以支援多行註解,寫法如下:

=begin
  這邊是註解
  多行專用的
  嘿嘿嘿嘿嘿
=end

在多行註解時請注意,=begin=end之前絕對不要有任何字元,就算是空白也是一樣,不然會造成錯誤。

可執行的Ruby腳本编辑

輸入好幾次ruby去執行程式碼真的很麻煩! 如果想避免麻煩請看看底下的介紹

Unix-like 作業系統编辑

Unix-like 作業系統 – 像是 Linux, Mac OS X, 跟 Solaris – 通常會用chmod指令將Ruby腳本的權限設定為可執行。這在Cygwin中也是有效的。

$ chmod +x hello-world.rb

當你建立一個新的腳本時,你每次都得手動為它加上執行權限,就像我上面所說的方法。不過如果你重新命名該腳本或者編輯一個已經存在的腳本,你就需要再去執行一次"chmod +x"。

接著,在腳本中的第一行加上shebang line。Shebang line可以讓Shell確定該用什麼程式來執行這個腳本。這行可不能被任何字元中斷或者加上空白。新的hello-world.rb程式 – 加上shebang line後像這樣:

#!/usr/bin/ruby
# 註解:也可以用這種方式 → #!/usr/bin/env ruby

puts 'Hello world'

如果你的ruby程式路徑不是在/usr/bin中,請記得改為你自訂路徑。預設都是安裝在/usr/bin或者/usr/local/bin/ruby

Ruby會當它為註解而忽略掉shebang line。而你也可以將程式碼執行在任何不支援shebang line的作業系統上(如:Windows)。

Now, you can run your Ruby script without typing in the word ruby. However, for security reasons, Unix-like operating systems do not search the current directory for executables unless it happens to be listed in your PATH environment variable. So you need to do one of the following: 現在你不再需要輸入ruby才能執行Ruby腳本。然而為了安全性,Unix-like的作業系統必須照著以下這樣做才可以執行腳本:

$ ./hello-world.rb

Windows编辑

如果你透過Ruby One-Click Installer來安裝Ruby在你的Windows上,那麼它在安裝過程中將會自動幫你把檔案關聯性設定好,只要輸入腳本名稱就可以執行:

$ hello-world.rb
Hello world

如果忘記燒香拜拜結果還是出錯,或者你用別種方式來安裝Ruby的話,照著以下做的就可以搞定:

  1. 請先登入為系統管理員系統管理員.
  2. 「開始」→「執行」→輸入「cmd」執行「命令提示字元」
  3. 在命令提示字元中輸入以下指令:
$ assoc .rb=RubyScript
.rb=RubyScript

$ ftype RubyScript="c:\ruby\bin\ruby.exe" "%1" %*
RubyScript="c:\ruby\bin\ruby.exe" "%1" %*

更多關於assocftype的相關說明,請輸入:help assochelp ftype