ruby 源碼
腳本 rb1021.rb
-----------------------------------------------------------------------------------------
1 #!/usr/bin/ruby
2 # ruby code
3
4 class MegaGreeter
5 attr_accessor :names
6
7 # Create the object
8 def initialize(names = "world")
9 @names = names
10 end
11
12 # Say hi to everybody
13 def say_hi
14 if @names.nil?
15 puts "..."
16 elsif @names.respond_to?("each")
17
18 # @names is a list of some kind, iterate!
19 @names.each do |name|
20 puts "Hello #{name}!"
21 end
22 else
23 puts "Hello #{@names}!"
24 end
25 end
26
27 # Say hi to everybody
28 def say_bye
29 if @names.nil?
30 puts "..."
31 elsif @name.respond_to?("join")
32 # join the list elements with commas
33 puts "Goodbye #{@names.join(", ")}. come back soon!"
34 else
35 puts "Goodbye #{@names}. come back soon!"
36 end
37 end
38 end
39
40 if __FILE__ == $0
41 mg = MegaGreeter.new
42 mg.say_hi
43 mg.say_bye
44
45 # Change name to be "Zeke"
46 mg.names = "Zeke"
47 mg.say_hi
48 mg.say_bye
49
50 # Change the name to an array of names
51 mg.names = ["Albert", "Brenda", "Charles", "Dave", "Englebert"]
52 mg.say_hi
53 mg.say_bye
54
55 # Change to nil
56 mg.names = nil
57 mg.say_hi
58 mg.say_bye
59 end
-----------------------------------------------------------------------------------------
輸出
-----------------------------------------------------------------------------------------
[embedded@embedded ruby]$ ruby rb1021.rb
Hello world!
Goodbye world. come back soon!
Hello Zeke!
Goodbye Zeke. come back soon!
Hello Albert!
Hello Brenda!
Hello Charles!
Hello Dave!
Hello Englebert!
Goodbye AlbertBrendaCharlesDaveEnglebert. come back soon!
...
...
-----------------------------------------------------------------------------------------
腳本源碼
看一下 bash python ruby各個路徑
-----------------------------------------------------------------------------------------
[embedded@embedded ~]$ whereis ruby
ruby: /usr/bin/ruby /usr/lib/ruby /usr/share/man/man1/ruby.1.gz
[embedded@embedded ~]$ whereis bash
bash: /bin/bash /usr/share/man/man1/bash.1.gz
[embedded@embedded ~]$ whereis python
python: /usr/bin/python /usr/bin/python2.6 /usr/bin/python2.6-config /usr/lib/python2.6 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
-----------------------------------------------------------------------------------------
腳本開頭 #!/usr/bin/ruby 類似bash腳本的 #!/bin/bash,包括解釋行的命令的路徑
# 為注釋標記
待續..........................
最後更新:2017-04-03 14:53:50