【问题标题】:How can I run a command line command from within a ruby file?如何从 ruby​​ 文件中运行命令行命令?
【发布时间】:2015-08-13 10:25:08
【问题描述】:

我安装了一个 gem,当有人键入“ls”时,它会显示火车在终端屏幕上移动的 ascii 图像。我还有一个名为 runner.rb 的文件。

如果可能的话,如何从 ruby​​ 文件中将“ls”命令输入到终端?

【问题讨论】:

标签: ruby file terminal command


【解决方案1】:
cmd = "ls > somefile.txt"
system( cmd )

甚至只是简单

system( "ls" )

这样,你就可以使用系统了。

【讨论】:

    【解决方案2】:

    您还可以使用 ( ` ) 字符从 ruby​​ 文件执行 Linux 命令。

    例如

    `ls` ## OR `whoami` etc.
    

    【讨论】:

      【解决方案3】:

      如果您想像坐在 shell 中一样执行命令(以便显示其输出等),请使用 system

      > system('ls')
      Look        At        All
      My          Cool      Files
      => true
      

      如果要捕获输出以供使用,请使用反引号。

      > files = `ls`
      => "Look\nAt\nAll\nMy\nCool\nFiles\n"
      

      如果你愿意,你可以在反引号中插入(显然在你传递给system的字符串中)。

      【讨论】:

        猜你喜欢
        • 2015-12-06
        • 2018-10-27
        • 2010-10-03
        • 2011-03-10
        • 1970-01-01
        • 2013-08-05
        • 2016-02-05
        • 2020-06-05
        相关资源
        最近更新 更多