【问题标题】:Opera calling scripts with PSN on OSX在 OSX 上使用 PSN 的 Opera 调用脚本
【发布时间】:2009-08-16 21:21:37
【问题描述】:

所以我想将我的 Opera 浏览器中的特定“协议”与 OSX 上的 shell 脚本相关联。

因此,我在 Opera 中这样做了:

  1. 高级选项卡 -> 程序
  2. 添加了“myProtocol”并将其设置为与其他应用程序“~/bin/myScript.sh”一起打开
  3. 应用设置等

现在,当我转到 myProtocol://some.url.or.other 时,opera 正在调用我的脚本。但是,$* 表明传递给脚本的唯一参数是 OSX PSN。

即在脚本中的行

echo $0 called with $*

输出

/Users/me/bin/myScript.sh called with -psn_0_4588640

为什么用 PSN 作为 cmd 行来调用它?为什么不是网址?在 ubuntu Opera 上传递 URL,OSX 是什么?

我可以让它用 URL 调用它吗?是否可以作为环境变量使用?

【问题讨论】:

    标签: shell scripting opera protocols


    【解决方案1】:

    Opera好像是用苹果命令open打开传入的文件

    这会启动应用程序,然后使用启动服务向其发送 Apple 事件 http://developer.apple.com/documentation/Carbon/Conceptual/LaunchServicesConcepts/LSCConcepts/LSCConcepts.html

    所以要打开一个文件,应用程序将被启动,然后必须响应一个苹果事件

    您的应用程序必须是完整的 OSX 应用程序,而不仅仅是脚本

    命令行上的 -psn 是从工作区进入的

    【讨论】:

    • 有道理。它适用于 linux - 可惜同样快速而肮脏的修复在这里也不起作用。谢谢!
    猜你喜欢
    • 2013-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-15
    • 2011-10-28
    • 2012-06-05
    • 1970-01-01
    相关资源
    最近更新 更多