open
命令可用于向程序发送文件,如本例所示:
open -a "Google Chrome" Untitled.png
Swift GUI应用程序将使用什么来接收通过该命令发送的路径?
我已经在主视图的init()
功能中尝试过了
if CommandLine.arguments.count != 1 {
path = CommandLine.arguments[1]
}
但路径似乎没有发送到那里。
对重复问题索赔的答复
在macOS上的Swift中:以URL作为参数打开Chrome,问题是询问如何打开Chrome,并从他们的应用程序中向其传递URL。我正在尝试打开我的应用程序,并通过从终端调用的open
命令从传递文件。
找不到参数的原因是您没有在命令中向应用程序传递任何参数。
与MyApp myFileURL
不同,open -a MyApp myFileURL
实际上并没有将myFileURL
传递给MyApp
。
要真正将任何参数传递给MyApp
,您需要专门使用--args
。