Erinevus lehekülje "Ruby" redaktsioonide vahel
(→Ruby paigaldamine) |
(→Ruby skript) |
||
| 41. rida: | 41. rida: | ||
===Ruby skript=== | ===Ruby skript=== | ||
| − | Ruby | + | Ruby skript esineb tekstifaili kujul, nt selline skript kirjutab 'Hello, world' |
| − | + | puts "Hello, world!" | |
| + | |||
| + | Skripti käivitamiseks sobib öelda | ||
| + | |||
| + | $ ruby skript.rb | ||
| + | Alternatiiviks on lisada faili algusse rida interpretaatori nimega | ||
| + | |||
| + | #!/usr/bin/ruby | ||
puts "Hello, world!" | puts "Hello, world!" | ||
| − | + | ning muuta fail käivitatavaks | |
| + | |||
| + | $ chmod 0755 skript.rb | ||
| + | |||
| + | ning käivitada | ||
| + | |||
| + | $ ./skript.rb | ||
| − | + | ===Konsoolilt sisendi lugemine=== | |
| − | |||
print "Enter your name: " | print "Enter your name: " | ||
name = gets | name = gets | ||
Redaktsioon: 28. veebruar 2010, kell 11:06
Sisukord
Sissejuhatus
Ruby http://www.ruby-lang.org/ on populaare programmeerimikeel, millele on iseloomulikud sellised asjaolud
- objekt-orienteeritud keel
- skriptimskeel
2010 aastal on levinud kaks Ruby versiooni
- 1.8 - ...
- 1.9 - ...
Ruby paigaldamine
Debian Lenny paketihalduses on olemas kaks Ruby versiooni
- 1.8.7 - vaikimisi
- 1.9.0 - võimalik lisaks paigaldada
Ruby v. 1.8.7 paigaldmiseks sobib öelda (tegelik paketinimi on ruby1.8)
# apt-get install ruby
Paigaldatud Ruby versiooni küsimiseks sobib öelda
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]
Ruby interpretaator
Ruby interpretaatori paigaldamiseks tuleb Debian operatsiooni puhul öelda
# apt-get install irb
Interpretaatorit saab kasutada nt kalkulaatorina
$ irb irb(main):001:0> 20.0/8 => 2.5
Ruby skript
Ruby skript esineb tekstifaili kujul, nt selline skript kirjutab 'Hello, world'
puts "Hello, world!"
Skripti käivitamiseks sobib öelda
$ ruby skript.rb
Alternatiiviks on lisada faili algusse rida interpretaatori nimega
#!/usr/bin/ruby puts "Hello, world!"
ning muuta fail käivitatavaks
$ chmod 0755 skript.rb
ning käivitada
$ ./skript.rb
Konsoolilt sisendi lugemine
print "Enter your name: " name = gets
Jadatöötlus
ary = [1, 2, 3] puts ary[0]
cities = %w[ London
Oslo
Paris
Amsterdam
Berlin ]
visited = %w[Berlin Oslo]
puts "I still need " +
"to visit the " +
"following cities:",
cities - visited
Stringitöötlus
herb = "parsley" puts herb[0,1] puts herb[0..3]
Random funktsioon
puts rand(10)
saame suvalise numbri 0-10
for num in (0..100)
print num,"\n"
end
Lihtne tsükkel nullist sajani
topelt tsükkel
#!/usr/local/bin/ruby
1.upto(10) do |fg|
1.upto(10) do |bg|
print "1"
end
puts
end
Shelli värvid
puts " \e[32mROHELINE\e[0m"
värvitabel, asjalik-vajalik
[0, 1, 4, 5, 7].each do |attr|
puts '----------------------------------------------------------------'
puts "ESC[#{attr};Foreground;Background"
30.upto(37) do |fg|
40.upto(47) do |bg|
print "\033[#{attr};#{fg};#{bg}m #{fg};#{bg} "
end
puts "\033[0m"
end
end
#!/usr/bin/env ruby require 'pathname' Pathname.new($0).realpath()
#!/usr/bin/env ruby
ARGV.each do|a|
puts "Argument: #{a}"
end
./arg.sh ahaa Argument: ahaa
failid
File.open("file", "r") do |io|
# do something with io
end
File.open("/location/of/my/file.txt", "r") do |f|
while ! f.eof do
line = f.gets
puts line #Print the line to the screen
end
end
DNS
Skript esitab domeeninimele vastavad ip aadressid
require 'resolv'
Resolv::DNS.new.each_address("www.loomaaed.tartu.ee") do |addr|
puts "www.loomaaed.tartu.ee A kirje: " + addr.to_s
end
Kasulikud lisamaterjalid
- http://www.ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/index.html
- http://www.elctech.com/articles/ruby-daemons-and-angels ruby ja deemonid
- http://www.phptoruby.com/ php ja ruby süntaksi teisendused