具有MacRuby / XCode的交互式shell机制

时间:2011-02-26 19:58:33

标签: ruby xcode shell interface-builder macruby

我有以下noobie课程:

class CoreController < NSWindowController
  attr_accessor :consoleOutput, :consoleInput, :command, :parsedcommand

  def showInConsole_clicked(sender)
    x = `"#{@consoleInput.stringValue()}"`
    @consoleOutput.stringValue = x
    @command.stringValue = @consoleInput.stringValue()
    @parsedcommand.stringValue = x
  end

end

属于此控制器的接口基本上从输入框读取并将其数据路由到shell语句。它有效,但不像我希望的那样酷。

例如,我可以使用' ls ',没有任何问题。但是,当我创建更长的命令,例如' ls -l <​​/ strong>'或' ruby​​ -v '时,它几乎就像没有发生任何事情一样。有人知道吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

问题在于此行中的双引号:

x = `"#{@consoleInput.stringValue()}"`

如果您输入 ruby​​-v ,则会执行该操作但如果您键入"ruby -v",则会失败,因为没有可执行文件名为“ruby -v” ,退出,因为只有红宝石。删除引号,它将起作用。