「RubyのTIPS」の版間の差分
提供: Eospedia
		
		
		
 (→system()を使用する)  | 
				|||
| (同じ利用者による、間の9版が非表示) | |||
| 行2: | 行2: | ||
<br>  | <br>  | ||
| − | ==   | + | == コード例 ==  | 
| − | + | === 変数名の注意事項 ===  | |
| + | 変数名の先頭文字は小文字を使用します。大文字で使用した場合は定数として扱われ、再代入するときにワーニングが出力されます。(但し、値は変わる)<br>  | ||
<br>  | <br>  | ||
| − | == irb ==  | + | === 改行の文字列を取り扱うとき ===  | 
| + | '''<<'(タグ名)' '''と'''(タグ名)'''で挟まれた文字列は改行も含めて使用することができます。ここで'''(タグ名)'''は文字列の開始と終了を判断する記号としてのみ機能しますので、中の文字列には出現しない名前にしましょう。<br>  | ||
| + | 例えば下記の用途などで有効です。<br>  | ||
| + | |||
| + | ==== HTMLの一部を使いたいとき ====  | ||
| + | 例えば、[[cgi]]をrubyで作成するときにある[[HTML]]ファイルの一部をコピーして使いたいときには下記のように記述します。<br>  | ||
| + | <pre>  | ||
| + | strHTML += <<'Block-HTML'  | ||
| + | <!DOCTYPE html>  | ||
| + | <html>  | ||
| + | 	<head>  | ||
| + | 		<title>Title</title>  | ||
| + | 	</head>  | ||
| + | 	<body>  | ||
| + | 	ABC<br>  | ||
| + | 	123<br>  | ||
| + | 	</body>  | ||
| + | </html>  | ||
| + | Block-HTML  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | ==== 改行込みの文字列をprintしたいとき ====  | ||
| + | printなどの文字列を関数の引数として'''()'''内に入れて使用するものは下記のように記述します。<br>  | ||
| + | <pre>  | ||
| + | print (<<"DDD")  | ||
| + | 1  | ||
| + | 2  | ||
| + | 3  | ||
| + | 4  | ||
| + | DDD  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | 実行結果<br>  | ||
| + | <pre>  | ||
| + | 1  | ||
| + | 2  | ||
| + | 3  | ||
| + | 4  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | === コメントアウト ===  | ||
| + | ブロックコメントには=beginと=endで挟んで使用します。<br>  | ||
| + | <pre>  | ||
| + | =begin  | ||
| + | require 'cgi'  | ||
| + | =end  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | === ruby内でシェルスクリプトを起動したいとき ===  | ||
| + | 下記の方法でシェルスクリプトを実行することができます。<br>  | ||
| + | <br>  | ||
| + | |||
| + | ==== system()を使用する ====  | ||
| + | system()を使用する方法があります。<br>  | ||
| + | 但し、lsなど標準出力のデータを得ることはできません。<br>  | ||
| + | <br>  | ||
| + | |||
| + | <pre>  | ||
| + | system("mkdir dirname")  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | ==== open("| ")を使用する ====  | ||
| + | lsコマンドなどは下記のようにすると標準出力のデータを得ることができます。<br>  | ||
| + | <pre>  | ||
| + | result = open("| ls -lh")  | ||
| + | while !result.eof  | ||
| + | 	strHTML += result.gets  | ||
| + | end  | ||
| + | result.close  | ||
| + | </pre>  | ||
| + | <br>  | ||
| + | |||
| + | == Webページを作成する ==  | ||
| + | [[Sinatra]]を利用することでWebページを簡単に作成することができます。<br>  | ||
| + | <br>  | ||
| + | |||
| + | == デバッグで使用するコマンド ==  | ||
| + | === irb ===  | ||
irbコマンドを実行するとインタラクティブにrubyコマンドを実行することができ、簡単な動作テストなどができる。<br>  | irbコマンドを実行するとインタラクティブにrubyコマンドを実行することができ、簡単な動作テストなどができる。<br>  | ||
<pre>  | <pre>  | ||
| 行15: | 行98: | ||
</pre>  | </pre>  | ||
exitと入力すると終了する。<br>  | exitと入力すると終了する。<br>  | ||
| + | <br>  | ||
| + | |||
| + | === インストールしたgemリスト ===  | ||
| + | gem listコマンドを実行すると、インストールしたgemのリストで表示します。<br>  | ||
| + | <pre>  | ||
| + | $ gem list  | ||
| + | |||
| + | *** LOCAL GEMS ***  | ||
| + | |||
| + | bundler (1.7.7)  | ||
| + | pione (0.4.2)  | ||
| + | </pre>  | ||
<br>  | <br>  | ||
2015年1月6日 (火) 08:41時点における最新版
ここではRubyについてのTIPSを挙げていきます。
目次
コード例
変数名の注意事項
変数名の先頭文字は小文字を使用します。大文字で使用した場合は定数として扱われ、再代入するときにワーニングが出力されます。(但し、値は変わる)
改行の文字列を取り扱うとき
<<'(タグ名)' と(タグ名)で挟まれた文字列は改行も含めて使用することができます。ここで(タグ名)は文字列の開始と終了を判断する記号としてのみ機能しますので、中の文字列には出現しない名前にしましょう。
例えば下記の用途などで有効です。
HTMLの一部を使いたいとき
例えば、cgiをrubyで作成するときにあるHTMLファイルの一部をコピーして使いたいときには下記のように記述します。
strHTML += <<'Block-HTML' <!DOCTYPE html> <html> <head> <title>Title</title> </head> <body> ABC<br> 123<br> </body> </html> Block-HTML
改行込みの文字列をprintしたいとき
printなどの文字列を関数の引数として()内に入れて使用するものは下記のように記述します。
print (<<"DDD") 1 2 3 4 DDD
実行結果
1 2 3 4
コメントアウト
ブロックコメントには=beginと=endで挟んで使用します。
=begin require 'cgi' =end
ruby内でシェルスクリプトを起動したいとき
下記の方法でシェルスクリプトを実行することができます。
system()を使用する
system()を使用する方法があります。
但し、lsなど標準出力のデータを得ることはできません。
system("mkdir dirname")
open("| ")を使用する
lsコマンドなどは下記のようにすると標準出力のデータを得ることができます。
result = open("| ls -lh")
while !result.eof
	strHTML += result.gets
end
result.close
Webページを作成する
Sinatraを利用することでWebページを簡単に作成することができます。
デバッグで使用するコマンド
irb
irbコマンドを実行するとインタラクティブにrubyコマンドを実行することができ、簡単な動作テストなどができる。
$ irb irb(main):001:0> print "hello world!" hello world!=> nil irb(main):002:0>
exitと入力すると終了する。
インストールしたgemリスト
gem listコマンドを実行すると、インストールしたgemのリストで表示します。
$ gem list *** LOCAL GEMS *** bundler (1.7.7) pione (0.4.2)