与URL的命令行打开Safari浏览器,并得到进程句柄(Open Safari with URL f

2019-06-27 11:01发布

我知道在MacOS的几种方法来打开Safari浏览器通过命令行给定的URL像

open -a Safari http://stackoverflow.com

或作为一个AppleScript

tell application "Safari" to open location "http://stackoverflow.com/"

但是,如果我开始的过程如编程我只会把手打开/ AppleScript的进程(右退出Safari浏览器启动后)。

我如何与给定的URL启动Safari和获取句柄到Safari浏览器进程(这仍然是超出了我为什么不能只是通过URL作为命令行参数的Safari浏览器可执行文件)?

Answer 1:

在AppleScript的,后URL打开Safari浏览器

tell application "Safari" to open location "http://stackoverflow.com/"

你可以通过获得过程对象

tell application "System Events" to set proc to application process "Safari"

的PROC对象将具有PID,包ID和等连接到它。

同时请注意,Safari 5以上在运行多进程架构 :一个主进程和多个渲染过程中,上面的代码将只会让你的主进程; 渲染过程是不容易接近,也没有太大的意义,以控制任何单个渲染过程。



文章来源: Open Safari with URL from command line and get process handle