如何在Mac OS中使用命令行参数运行应用程序?
有什么简单的方法可以在Mac上将命令行参数附加到应用程序中吗?例如,要在kiosk模式下运行Opera或在Firefox中使用不同的配置文件,我可以键入
$ /Applications/Opera.app/Contents/MacOS/Opera -kioskmode
$ /Applications/Firefox.app/Contents/MacOS/firefox -P profilename -no-remote
在Windows中,我可以将参数附加到快捷方式属性中,但由于Mac不使用快捷方式本身并直接运行应用程序,这是不可能的。
我发现通过bash或Applescript启动应用程序部分有效。
# Bash
#!/bin/sh
/Applications/Firefox.app/Contents/MacOS/firefox -P default -no-remote
# Applescript
do shell script "exec /Applications/Opera.app/Contents/MacOS/Opera -kioskmode"
我可以把这些程序变成可执行程序,并指定一个图标,一切都很好,除了当我运行这些伪程序时,只要应用程序打开,终端窗口或Applescript图标就会一直打开。据推测,使用Applescript命令open
可以避免这种情况,但由于我并没有运行打包后的应用程序(只是/Applications/Firefox
),所以不起作用。
那么,有没有更好的方法来运行带有命令行参数的应用程序?如果没有,有没有办法防止应用程序打开时持久的终端会话或Applescript图标保持打开状态?
编辑
根据Mozilla Wiki页面,最好使用脚本来运行带有参数的应用程序。在脚本的结尾添加&
会杀死持久的终端窗口. 现在唯一的烦恼是它打开了一个死的、已注销的终端窗口(这比持久窗口好,但还是…)
#!/bin/sh
/Applications/Firefox.app/Contents/MacOS/firefox -P default -no-remote &
``` 。