📄 3.1.htm
字号:
<TD class=v2> </TD></TR>
<TR>
<TD class=t1 vAlign=bottom>Chapter 3. Built-in Library
Reference</TD></TR></TBODY></TABLE>
<HR SIZE=1>
<BR>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD vAlign=top><A name=ruby-CHP-3-SECT-1></A>
<H3 class=docSection1Title>3.1 Predefined Variables</H3><A
name=ruby-IDXTERM-438></A>
<P class=docText><A name=IXT-3-127187></A>Ruby's predefined
(built-in) variables affect the behavior of the entire
program, so their use in libraries isn't recommended. The
values in most predefined variables can be accessed by
alternative means. </P><A name=IXT-3-127188></A><A
name=IXT-3-127189></A><A name=IXT-3-127190></A><A
name=IXT-3-127191></A><A name=IXT-3-127192></A><A
name=IXT-3-127193></A><A name=IXT-3-127194></A><A
name=IXT-3-127195></A><A name=IXT-3-127196></A><A
name=IXT-3-127197></A><A name=IXT-3-127198></A><A
name=IXT-3-127199></A><A name=IXT-3-127200></A><A
name=IXT-3-127201></A><A name=IXT-3-127202></A><A
name=IXT-3-127203></A><A name=IXT-3-127204></A><A
name=IXT-3-127205></A><A name=IXT-3-127206></A><A
name=IXT-3-127207></A><A name=IXT-3-127208></A><A
name=IXT-3-127209></A><A name=IXT-3-127210></A><A
name=IXT-3-127211></A><A name=IXT-3-127212></A><A
name=IXT-3-127213></A><A name=IXT-3-127214></A><A
name=IXT-3-127215></A><A name=IXT-3-127216></A><A
name=IXT-3-127217></A><A name=IXT-3-127218></A><A
name=IXT-3-127219></A><A name=IXT-3-127220></A><A
name=IXT-3-127221></A><A name=IXT-3-127222></A><A
name=IXT-3-127223></A><A name=IXT-3-127224></A>
<DL class=docList>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$!</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The last exception object raised. The
exception object can also be accessed using <TT>=></TT>
in <TT>rescue</TT> clause. </P><A name=IXT-3-127188></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$@</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The <TT>stack backtrace</TT> for the last
exception raised. The <TT>stack backtrace</TT> information
can retrieved by <TT>Exception#backtrace</TT> method of the
last exception. </P><A name=IXT-3-127189></A><A
name=IXT-3-127190></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$/</SPAN></SPAN><A
name=IXT-3-127191></A></SPAN>
<DD>
<P class=docList>The input record separator (newline by
default). <TT>gets</TT>, <TT>readline</TT>, etc., take their
input record separator as optional argument. </P><A
name=IXT-3-127192></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$\</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The output record separator (<TT>nil</TT>
by default).</P><A name=IXT-3-127193></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$,</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The output separator between the arguments
to print and <TT>Array#join</TT> (<TT>nil</TT> by default).
You can specify separator explicitly to <TT>Array#join</TT>.
</P>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$;</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The default separator for <TT>split</TT>
(<TT>nil</TT> by default). You can specify separator
explicitly for <TT>String#split</TT>. </P><A
name=IXT-3-127194></A><A name=IXT-3-127195></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$.</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The number of the last line read from the
current input file. Equivalent to <TT>ARGF.lineno</TT>. </P>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$<</SPAN></SPAN></SPAN>
<DD>
<P class=docList>Synonym for <TT>ARGF</TT>.</P><A
name=IXT-3-127196></A><A name=IXT-3-127197></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$></SPAN></SPAN></SPAN>
<DD>
<P class=docList>Synonym for <TT>$defout</TT>.</P>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$0</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The name of the current Ruby program being
executed.</P><A name=IXT-3-127198></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$$</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The <TT>process.pid</TT> of the current
Ruby program being executed. </P><A name=IXT-3-127199></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$?</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The exit status of the last process
terminated.</P><A name=IXT-3-127200></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$:</SPAN></SPAN></SPAN>
<DD>
<P class=docList>Synonym for <TT>$LOAD_PATH</TT>.</P><A
name=IXT-3-127201></A><A name=IXT-3-127202></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$DEBUG</SPAN></SPAN><A
name=IXT-3-127203></A></SPAN>
<DD>
<P class=docList>True if the <TT>-d</TT> or <TT>--debug</TT>
command-line option is specified. </P><A
name=IXT-3-127204></A><A name=IXT-3-127205></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$defout</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The destination output for <TT>print</TT>
and <TT>printf</TT> (<TT>$stdout</TT> by default). </P><A
name=IXT-3-127206></A><A name=IXT-3-127207></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$F</SPAN></SPAN><A
name=IXT-3-127208></A><A name=IXT-3-127209></A></SPAN>
<DD>
<P class=docList>The variable that receives the output from
<TT>split</TT> when <TT>-a</TT> is specified. This variable
is set if the <TT>-a</TT> command-line option is specified
along with the <TT>-p</TT> or <TT>-n</TT> option. </P><A
name=IXT-3-127210></A><A name=IXT-3-127211></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$FILENAME</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The name of the file currently being read
from <TT>ARGF</TT>. Equivalent to <TT>ARGF.filename</TT>.
</P>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$LOAD_PATH</SPAN></SPAN></SPAN>
<DD>
<P class=docList>An array holding the directories to be
searched when loading files with the load and require
methods. </P><A name=IXT-3-127212></A><A
name=IXT-3-127213></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$SAFE</SPAN></SPAN></SPAN>
<DD>
<P class=docList>The security level. See <A class=docLink
href="http://proquest.safaribooksonline.com/JVXSL.asp?xmlid=0-59600-214-9/ruby-CHP-2-SECT-10#ruby-CHP-2-SECT-10">Section
2.10</A>.</P>
<DL class=docList>
<DT><SPAN class=docPubcolor><SPAN
class=docEmphasis>0</SPAN> </SPAN>
<DD>
<P class=docList>No checks are performed on externally
supplied (tainted) data. (default) </P>
<DT><SPAN class=docPubcolor><SPAN
class=docEmphasis>1</SPAN> </SPAN>
<DD>
<P class=docList>Potentially dangerous operations using
tainted data are forbidden.</P>
<DT><SPAN class=docPubcolor><SPAN
class=docEmphasis>2</SPAN> </SPAN>
<DD>
<P class=docList>Potentially dangerous operations on
processes and files are forbidden.</P>
<DT><SPAN class=docPubcolor><SPAN
class=docEmphasis>3</SPAN> </SPAN>
<DD>
<P class=docList>All newly created objects are considered
tainted.</P>
<DT><SPAN class=docPubcolor><SPAN
class=docEmphasis>4</SPAN> </SPAN>
<DD>
<P class=docList>Modification of global data is
forbidden.</P></DD></DL><A name=IXT-3-127214></A><A
name=IXT-3-127215></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$stdin</SPAN></SPAN></SPAN>
<DD>
<P class=docList>Standard input (<TT>STDIN</TT> by
default).</P><A name=IXT-3-127216></A><A
name=IXT-3-127217></A>
<DT><SPAN class=docPubcolor><SPAN class=docPubcolor><SPAN
class=docMonofont>$stdout</SPAN></SPAN></SPAN>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -