红宝石 – 代替变量里面的反引号操作符的值

前端之家收集整理的这篇文章主要介绍了红宝石 – 代替变量里面的反引号操作符的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何替换反向运算符中的变量的值?
script_dir = File.expand_path File.dirname(__FILE__)
p `ruby -e p "$script_dir"` # this does not work

解决方法

在Ruby中,与Perl不同,美元符号表示全局变量,而不是在字符串中展开的普通常量变量.在一个字符串中,你需要使用#{}结构:
p `ruby -e "p #{script_dir}"`

一个例子:

irb(main):011:0> str = '\'howdy\''
=> "'howdy'"
irb(main):012:0> `ruby -e "p #{str}"`
=> "\"howdy\"\n"

猜你在找的Ruby相关文章