我正在尝试编写一个快速脚本,该脚本将关闭除终端应用程序的当前窗口之外的所有窗口。此脚本使用MacRuby和Scripting Bridge。继承人到目前为止我所拥有的:
#!/usr/local/bin/macruby
framework "Foundation"
framework "ScriptingBridge"
terminal = SBApplication.applicationWithBundleIdentifier("com.apple.Terminal")
terminal.windows[2].close while terminal.windows.count > 1
当我尝试运行此操作时,出现以下错误:
undefined method `close' for #<TerminalWindow:0x40033b0e0> (NoMethodError)
这种方法似乎适用于AppleScript。有谁知道为什么它在这里失败了?
答案 0 :(得分:2)
我找到了TerminalWindow
API here的副本。使用它,我需要做的就是:
TerminalSaveOptionsNo = 'no '.unpack('N').first
terminal.windows[1].closeSaving(TerminalSaveOptionsNo, savingIn: nil)