加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 命令行选项

发布时间:2020-12-17 03:39:22 所属栏目:百科 来源:网络整理
导读:我对 Ruby命令行选项感到困惑. -C dir和-X dir都删除目录,但它们如何相互不同? -x [dir]与-X目录有什么不同? -I dir做什么(我知道它添加了dir作为加载库的目录)? 解决方法 让我们在主目录中创建一个test.rb文件,其中包括: hello#!/usr/bin/rubyp "here"
我对 Ruby命令行选项感到困惑. -C dir和-X dir都删除目录,但它们如何相互不同?

> -x [dir]与-X目录有什么不同?
> -I dir做什么(我知道它添加了dir作为加载库的目录)?

解决方法

让我们在主目录中创建一个test.rb文件,其中包括:

hello
#!/usr/bin/ruby
p "here"

现在,如果我们尝试运行它:

ruby -C /home/my_home test.rb

这意味着将工作目录更改为/ home / my_home并运行test.rb会出现错误:

test.rb:1:in `<main>': undefined local variable or method `hello' for main:Object (NameError)

如果我们运行它:

ruby -x /home/my_home test.rb

我们将“打印”到这里并且没有错误. -x和-C之间的主要区别在于-x删除#!/usr/bin/ruby??行之前的所有内容.当使用-x时,您也不必将目录设置为cd.因为-x的主要目的是删除行,如果需要,它也只包括-C功能.

cd /home/my_home; ruby -x test.rb

见(ruby –help)

> -Cdirectory cd to directory,在执行脚本之前
> -x [directory]在#!ruby line之前删除文本,也许cd到目录

至于-I.您可以提供ruby将搜索您执行或要求的文件的目录.

ruby -x test.rb

除非您在/ home / my_home中,否则Ruby将找不到test.rb文件.但是如果你添加-I ruby??也会在“/ home / my_home”中查找test.rb.

ruby -x -I/home/my_home test.rb

与-C的不同之处在于它在执行之前不会更改目录,而只会在那里搜索文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读