含有$的ruby中的一些变量

ruby comes with a set of predefined variables

$: = default search path (array of paths)

其他Ruby特殊变量:
$! 最近一次的错误信息
[email protected] 错误产生的位置
$_ gets最近读的字符串
$. 解释器最近读的行数(line number)
$& 最近一次与正则表达式匹配的字符串
$~ 作为子表达式组的最近一次匹配
$n 最近匹配的第n个子表达式(和$~[n]一样)
$= 是否区别大小写的标志
$/ 输入记录分隔符
$\ 输出记录分隔符
$0 Ruby脚本的文件名
$* 命令行参数
$$ 解释器进程ID
$? 最近一次执行的子进程退出状态

含有$的ruby中的一些变量

时间: 2024-08-12 05:08:35

含有$的ruby中的一些变量的相关文章

ruby中的实例变量和类变量

定义很简单:实例变量@开头,类变量@@开头 看了一些文章和书,目前了解到的(其实还是不太懂,先记着吧,错了再改): 类变量:可以在类方法和类实例方法中访问,也能被子类继承,并且子类修改之后,父类的值也会更改. 不同的子类都共享这个一个数值,包括子类的实例,都可以来修改这一个值.就理解成:不管自己还是子类的,什么函数都可以访问,也都可以改,改了之后也是大家共享. 实例变量:能被类方法访问,不能被继承,子类中赋值不会影响父类. 子类如果修改了,其实是不是重新定义了一下又赋了新的值? 这个其实更像应该

ruby中实例变量、类变量等等的区别和联系

ruby的变量有局部变量,全局变量,实例变量,类变量,常量. 1.局部变量 局部变量以一个小写字母开头或下划线开头 局部变量有局部作用域限制(比如一个block内),它的作用域起始于声明处,结束于该声明所在的块.方法定义.类/模块定义的结尾.大家在写代码时经常这样写: irb(main):001:0> i=123    ---------- 这里的i就是局部变量 =>123 irb(main):002:0> s="hi"   ---------- 这里的s就是局部变量

[转载]Ruby 中$开头的全局变量、内部变量、隐藏变量介绍

转自:http://www.jb51.net/article/48802.htm Ruby 中充满了一系列的隐藏变量,我们可以从这些预定义的全局变量中获取一些有意思的信息. 全局进程变量 $$ 表示当前运行的 ruby 进程. >> $$=> 17170 我们可以从当前进程杀死它自己 >> `kill -9 #{$$}`[1]    17170 killed     irb $? 表示最近一个子进程的状态 >> `echo hello`=> "he

ruby 中的变量

1.变量和常量: 全局变量用$;   实例变量用@;   类变量用@@; Local Variable:  name fish_and_chips x_axis thx1138 _x _26Instance Variable:   @name @point_1 @X @_ @plan9Class Variable:  @@total @@symtab @@N @@x_pos @@SINGLEGlobal Variable:   $debug $CUSTOMER $_ $plan9 $Global

关于Lumen / Laravel .env 文件中的环境变量是如何生效的

.env 文件包含默认环境变量,我们还可自定义其他任何有效的变量,并可通过  调用 env() 或 $_SERVER 或 $_ENV  来获取该变量.那么env()是如何加载到这些变量的呢?在Lumen的vendor/laravel/lumen-framework/src/helpers.php中,我们可以发现env函数是这样被定义的: if (! function_exists('env')) { /** * Gets the value of an environment variable.

谈谈Ruby中的类变量

Ruby中的类变量,很多文章都是不太建议使用的,主要原因在于他的一些特性容易导致犯一些错误,尤其在广泛使用元编程的时候. 初步接触类变量可能觉得他跟C++的类静态成员和Java中的静态变量没什么区别,但在实际使用中一不留神就会掉到类变量的陷阱中去 陷阱1,类变量跟类实例变量不同,类实例变量关联的是self,但类变量关联的是当前类作用域 class C end class D end class C @@var = "C" def D.getvar @@var end end class

在 Ruby 中执行 Shell 命令的 6 种方法

我们时常会与操作系统交互或在 Ruby 中执行 Shell 命令.Ruby为我们提供了完成该任务的诸多方法. Exec Kernel#exec 通过执行给定的命令来替换当前进程,例如: $ irb >> exec 'echo "hello $HOSTNAME"' hello codefun $ 注意 exec 利用 echo 命令替换了 irb 进程,然后退出.因为 Ruby 实际上结束了该方法,所以只能有限使用.该方法的缺点是,你无法从 Ruby 脚本中知道命令是执行成功

理解Ruby中的作用域

作用域对于Ruby以及其它编程语言都是一个需要理解的至关重要的基础知识.在我刚开始学习ruby的时候遇到很多诸如变量未定义.变量没有正确赋值之类的问题,归根结底是因为自己对于ruby作用域的了解不够,但在你看看完我的这篇文章后,相信你不会再担心会遇到这些头疼的问题. 什么是作用域? 当谈论到作用域的时候,应该马上想到变量和可见性这两个词,变量和可见性是作用域的主要内容,没错,作用域就是关于在代码的什么地方什么变量是可见的,当你充分了解了作用域后,给你一段代码,你可以轻易知道此时什么变量是可见的,

关于ruby中的空指针保护(||=)

平时我们在写代码,构造嵌套数据或者给某个变量初始化时会用到下面这种形式: a ||= []  ; a = b || c ; a = a || [] 这种形式可以保证,在这些变量要被访问的时候才进行初始化,给我们构造数据带来了极大的灵活性:而这就是ruby中的空指针保护的应用. 要理解空指针保护的工作方式,要从ruby真假值和||操作法两方面着手: 首先,在ruby中除了nil和false被作为false外,其它值就被认为是true 其次,表面上||操作符会在两个表达式中任何一个为true时返回t