Google

$BA0(B - $B - $BL\

$BAH9~$_JQ?t(B



$!

$B:G6a$NNc30$K4X$9$k>pJs!%(B raise $B$K$h$C$F(B $B@_Dj$5$l$^$9!%(B

$@

$BNc30$,H/@8$7$?;~%P%C%/%H%l!<%9$,G[Ns$H$7$F$,3JG<$5$l$^$9!%(B $BG[Ns$N3FMWAG$O%a%=%C%I$N8F$S=P$70LCV$r<($9J8;zNs$G7A<0$O(B

"filename:line"
$B$^$?$O(B
"filename:line:in `methodname'"
$B$G$9!%(B ($B3P$(J}(B: where exception occurred at.)

$&

$B8=:_$N%9%3!<%W$G:G8e$K@.8y$7$?@55,I=8=$N%Q%?!<%s%^%C%A$G%^%C%A$7$?(B $BJ8;zNs!%:G8e$N%^%C%A$,<:GT$7$F$$$?>l9g$K$O(Bnil$B!%(B ($B3P$(J}(B: $B$$$/$D$+$N%(%G%#%?$G$N(B& $B$HF1$8(B)

$`

$B8=:_$N%9%3!<%W$G:G8e$K@.8y$7$?@55,I=8=$N%Q%?!<%s%^%C%A$G%^%C%A$7$?(B $BItJ,$h$jA0$NJ8;zNs!%:G8e$N%^%C%A$,<:GT$7$F$$$?>l9g$K$O(Bnil$B!%(B ($B3P$(J}(B: `$B$OJ8;zNs$NA0$KCV$+$l$k(B)

$'

$B8=:_$N%9%3!<%W$G:G8e$K@.8y$7$?@55,I=8=$N%Q%?!<%s%^%C%A$G%^%C%A$7$?(B $BItJ,$h$j8e$m$NJ8;zNs!%:G8e$N%^%C%A$,<:GT$7$F$$$?>l9g$K$O(Bnil$B!%(B ($B3P$(J}(B: '$B$OJ8;zNs$N8e(B $B$m$KCV$+$l$k(B)

$+

$B8=:_$N%9%3!<%W$G:G8e$K@.8y$7$?@55,I=8=$N%Q%?!<%s%^%C%A$G%^%C%A$7$?(B $BCf$G:G8e$N3g8L$KBP1~$9$kItJ,J8;zNs!%(B $B:G8e$N%^%C%A$,<:GT$7$F$$$?>l9g$K$O(Bnil$B!%(B $B$$$/$D$+$"$kA*Br7?$N%Q%?!<%s$N$I$l$,%^%C%A$7$?$N$+J,$+$i$J$$;~$KJXMx(B ($B3P$(J}(B: be positive and forward looking.)

$1, $2...

$B:G8e$K@.8y$7$?%Q%?!<%s%^%C%A$G(Bn$BHVL\$N3g8L$K%^%C%A$7$?CM$,3J(B $BG<$5$l$^$9!%3:Ev$9$k3g8L$,$J$1$l$P(Bnil$B$,F~$C$F$$(B $B$^$9!%(B($B3P$(J}(B: \$B?t;z(B $B$N$h$&$J$b$N(B)

$~

$B8=:_$N%9%3!<%W$G:G8e$K@.8y$7$?%^%C%A$K4X$9$k>pJs!%$3$l$r@_Dj(B $B$9$k$H(B$&$B$d(B `$1...$9'$B$J$I$NCM$,JQ2=$7$^$9!%(B $B$3$N%G!<%?$+$i(Bn$BHVL\$N%^%C%A(B($n)$B$r$~[n]$B$G;2>H$G$-$^$9!%(B ($B3P$(J}(B: ~ $B$O%^%C%A$K;H$o$l$k(B)

$B$3$NJQ?t$O%m!<%+%k%9%3!<%W$G$9!%(B

$=

$B%Q%?!<%s%^%C%A$dJ8;zNs$NHf3S$G%"%k%U%!%Y%C%H$NBgJ8;z>.J8;z$r(B $B6hJL$9$k$+$I$&$+$N%U%i%0!%%G%U%)%k%H$O(Bnil$B!%(B($B3P$(J}(B: = $B$OHf3S(B $B$K;H$o$l$k(B)

$/

$BF~NO%l%3!<%I%;%Q%l!<%?!%%G%U%)%k%H$O(B"\n"$B!%(B awk$B$N(BRS$BJQ?t$N$h$&$KF/$-$^$9!%$3$NJQ?t$K(Bnil$B$r@_(B $BDj$9$k$H%U%!%$%kA4BN$r0lEY$KFI$_9~$_$^$9!%(B$/$B$K(B $B$O@55,I=8=$O;H$($^$;$s!%(B($B3P$(J}(B: $B;m$G$O(B / $B$r9T$N6h@Z$j$K;H$&(B)

$\

$B=PNO%l%3!<%I%;%Q%l!<%?!%$3$NJQ?t$KJ8;zNs$r;XDj$9$k$H(B IO#write$B$d(B print$B$NEY$K:G(B $B8e$K$3$NJ8;zNs$rIU2C$7$F=PNO$7$^$9!%%G%U%)%k%H$O(B nil$B$G$3$N>l9g$J$K$bDI2C$7$^$;$s!%(B ($B3P$(J}(B: It's just like /, but it's what you get "back" from Ruby.)

$,

Array#join$B$N%G%U%)(B $B%k%H$N6h@Z$jJ8;zNs!%(B

print$B$N3F0z?t(B $B$N4V$K=PNO$5$l$kJ8;zNs!%(B ($B3P$(J}(B: print $B$G(B , $B$,$"$k$H$3$m$G=PNO$5$l$k(B)

$;

String#split. $B$N%G%U%)%k%H$N6h@Z$jJ8;z!%(B

$.

$B:G8e$KFI$s$@F~NO%U%!%$%k$N9THV9f!%(B

$<

$B0z?t(B($B$J$1$l$PI8=`F~NO(B)$B$G9=@.$5$l$k2>A[%U%!%$%k!%$D$^$j(B $BDj?t(BARGF$B$NJLL>!%(B ($B3P$(J}(B: <$B$O%7%'%k$NF~NO85;XDj(B)

$>

print$B$d(B printf$B$N%G%U%)%k%H(B $B$N=PNO@h!%=i4|CM$O(BSTDOUT$B!%(B`-i'$B%*%W(B $B%7%g%s$r;XDj$7$?>l9g$K$OFI$_9~$_85$HF1$8L>A0$N%U%!%$%k!%(B($B3P(B $B$(J}(B: >$B$O%7%'%k$N=PNO@h;XDj(B)

$_

$B:G8e$K(Bgets$B$^$?$O(Breadline$B$GFI$_9~$s$@J8;zNs!%(B EOF $B$KC#$7$?>l9g$K$O!"(Bnil$B!%$3$NJQ?t$O%m!<%+%k%9%3!<%W$G$9!%(B ($B3P$(J}(B: Perl$B$HF1$8(B)

$0

$B8=:_A0!%(BOS$B$K$h$C$F$O$3$NJQ?t$KBeF~$9$k$H(B ps(1)$B$N=PNO$,JQ2=$7$^$9!%$3$N5!G=$O%W%m%0%i%`$N(B $B8=:_$N>uBV$rI=<($9$k$N$KJXMx$G$9!%(B($B3P$(J}(B: sh $B$d(B ksh$B$HF1$8(B)

$*

Ruby$B%9%/%j%W%H$KM?$($i$l$?0z?t!%(BRuby$B<+?H$KBP$9$k0z?t$O

$$

$B8=:_

$?

($B$3$N(Bthread$B$G(B)$B:G8e$K

$:

load$B$d(B require $B$,%U%!%$%k$r%m!<%I$9$k;~$K8!:w$9$k%G%#%l%/%H%j$N%j%9%H$r4^$`(B $BG[Ns!%(B

$B5/F0;~$K$O!$(B -I$B%*%W%7%g%s$G;XDj$7(B $B$?%G%#%l%/%H%j!$4D6-JQ?t(BRUBYLIB$B$NCM!$%G%U%)%k%HCM(B ($B%3%s%Q%$%k;~$K;XDj$9$k!$B?$/$N>l9g(B "/usr/local/lib/ruby")$B!$(B "."($B%+%l%s%H%G%#%l%/%H%j(B)$B$rCM$H$7$F;}$A$^$9!%(B ($B3P$(J}(B: $B%3%m%s$O4D6-JQ?t(BPATH$B$N6h@Z$jJ8;z$G$"$k(B)

$"

require$B$G%m!<(B $B%I$5$l$?%U%!%$%kL>$r4^$`G[Ns!%(B require$B$GF1(B $B$8%U%!%$%k$r(B2$B2s%m!<%I$7$J$$$?$a$KMQ$$$i$l$F$$$^$9!%(B($B3P$(J}(B: prevent files to be doubly quoted(loaded))

$DEBUG

-d$B%U%i%0$N>uBV(B ($B??56CM(B)$B!%(B

$FILENAME

$B2>A[%U%!%$%k(BARGF$B$G8=:_FI$_9~$_Cf$N(B ($B%a%=%C%I(Bgets$B$,:#FI$s$G$$$k(B)$B%U%!%$%kL>!%(BARGF.filename $B$HF1$8!%(B

$LOAD_PATH

$:$B$NJLL>!%(B

$stdin

$BI8=`F~NO!%(B

$stdout

$BI8=`=PNO!%(B

$stderr

$BI8=`%(%i!<=PNO!%(B

$VERBOSE

$B>iD9%a%C%;!<%8%U%i%0!%(BRuby$B%$%s%?%W%j%?$X$N(B -v$B%*%W%7%g%s(B $B$G%;%C%H$5$l$^$9!%(B

$KCODE

Ruby$B$N=hM}$9$kJ8;z%3!<%I!%(B $BJ8;zNs$G;XDj$7!$(B`E'$B$^$?$O(B`e'$B$N>l(B $B9g$OJ8;zNs$d%"%/%;%9$9$k%U%!%$%k$NFbMF$N%3!<%I$,(BEUC$B$G$"$k$H(B $B2>Dj$7$^$9!%F1MM$K(B`S'$B$^$?$O(B`s'$B$N>l9g$O(BSJIS$B$H$7$F=hM}$7$^$9!%(B `U'$B$^$?$O(B`u'$B$N>l9g$O(BUTF-8$B$H$7$F=hM}$7$^$9!%(B `N'$B$^$?$O(B`n'$B$N>l9g$O4A;z$r=hM}$7$^$;$s!%(B $B%3%s%Q%$%k;~$N@_Dj$G%G%U%)%k%H$,7h$^$j$^$9!%(B

$B%*%W%7%g%sJQ?t(B

Ruby$B%$%s%?%W%j%?$N%3%^%s%I%i%$%s>pJs$r<($90lO"$NJQ?t$,$"$j$^(B $B$9!%7A<0$O(B$-?$B$G!)$NItJ,$K%*%W%7%g%s$N0lJ8;z$,F~(B $B$j$^$9!%(B

$-0

$/$B$NJLL>!%(B

$-a

-a$B$,;XDj$5$l$F$$$k;~!$??!%%j!<%I%*%s%j!

$-d

$DEBUG$B$NJLL>!%(B

$-F

$;$B$NJLL>!%(B

$-i

-i$B$,;XDj$5$l$F$$$k;~!$3HD%;R$rI=$9J8;zNs$r3J(B $BG<$7$^$9!%;XDj$5$l$F$$$J$$;~$NCM$O(Bnil$B$G$9!%%9%/(B $B%j%W%HFb$GBeF~$9$k$3$H$b$G$-!$$=$N>l9g$O(B ARGV$B$N

$-I

$:$B$NJLL>!%(B

$-K

$KCODE$B$NJLL>!%(B

$-l

-l$B$,;XDj$5$l$F$$$k;~!$??!%%j!<%I%*%s%j!

$-p

-p$B$,;XDj$5$l$F$$$k;~!$??!%%j!<%I%*%s%j!

$-v

$VERBOSE$B$NJLL>!%(B


$BAH9~$_Dj?t(B



TRUE

$BBeI=E*$J??$NCM!%(BRuby$B$G$O56$G$J$$CM(B(false$B$G$b(Bnil$B$G$b$J$$CM(B)$B$O(B $BA4$F??$H$_$J$5$l$^$9!%(B

FALSE

$B56$NCM(B

NIL

nil$B!%(B

STDIN

$BI8=`F~NO!%(B $stdin$B$N%G%U%)%k%HCM!%(B

STDOUT

$BI8=`=PNO!%(B$stdout$B$N%G%U%)%k%HCM!%(B

STDERR

$BI8=`%(%i!<=PNO!%(B$stderr $B$N%G%U%)%k%HCM!%(B

ENV

$B4D6-JQ?t$rI=$9(B($B5?;w(B)$BO"A[G[Ns(B$B!%$3$NO"A[G[Ns(B $B$NCM$rJQ99$9$k$H;R%W%m%;%9$N4D6-$H$7$F0z$-7Q$,$l$^$9!%(B

ARGF

$B0z?t(B($B$J$1$l$PI8=`F~NO(B)$B$G9=@.$5$l$k2>A[%U%!%$%k!%$D$^$j(B gets$B$O(BARGF.gets$B$HF1$80UL#$G$9!%(B ARGF.file$B$G8=:_FI$_9~$_Cf$N%U%!%$%k%*%V%8%'%/%H$,!$(B ARGF.filename$B$G8=:_FI$_9~$_Cf$N%U%!%$%kL>$,(B $BF@$i$l$^$9!%(B

ARGV

$*$B$HF1$8(B

DATA

$B%9%/%j%W%H$N(B__END__$B0J9_$r%"%/%;%9$9$k%U%!%$%k%*(B $B%V%8%'%/%H!%%9%/%j%W%H$,%U%!%$%k$K3JG<$5$l$F$$$J$$;~$K$ODj5A(B $B$5$l$J$$!%(B

RUBY_VERSION

Ruby$B$N%P!<%8%g%s$r<($9J8;zNs!%(B

RUBY_RELEASE_DATE

Ruby$B$N%j%j!<%9F|$r<($9J8;zNs!%(B

RUBY_PLATFORM

$B%W%i%C%H%U%)!<%`$r<($9J8;zNs!%(B


$BA0(B - $B - $BL\

matz@netlab.co.jp