Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何覆盖系统功能_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 如何覆盖系统功能

Ruby on rails 如何覆盖系统功能,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想覆盖system()函数。这可能吗?当然,您可以在Ruby中覆盖几乎所有内容(无论是否有用): 如果使用system根本不重要,那么您可以使用backticks。backticks执行命令并以字符串形式返回输出 然后,可以将该值指定给变量,如下所示: output = `ls` p output 你为什么要那样做?你想实现什么?正如评论员23tux所解释的,你可以通过定义“monkeypatch”它。但是你,这是件坏事。如果你问你是否可以,说明你可能不知道为什么不应该。我不知道你的项目,但

我想覆盖system()函数。这可能吗?

当然,您可以在Ruby中覆盖几乎所有内容(无论是否有用):


如果使用
system
根本不重要,那么您可以使用backticks。backticks执行命令并以字符串形式返回输出

然后,可以将该值指定给变量,如下所示:

output = `ls`
p output

你为什么要那样做?你想实现什么?正如评论员23tux所解释的,你可以通过定义“monkeypatch”它。但是你,这是件坏事。如果你问你是否可以,说明你可能不知道为什么不应该。我不知道你的项目,但如果你想在全球范围内使用它:在你第一次呼叫系统之前;)例如,在初始值设定项中,或在startscript中或其他任何内容中
output = `ls`
p output