我有一个苹果脚本应该安装带有管理员权限的打印机驱动程序,然后是一个bash脚本,它根据ip地址将打印机添加到计算机。 apple脚本和pkg文件位于同一个文件夹中。
我有点坚持如何编写苹果脚本,以便pkg可以相对于其位置运行。我的目标是在某处托管脚本,其他mac可以运行并安装相同的打印机。任何想法的家伙?
这是我到目前为止所拥有的
运行{input,parameters}
do shell script "sudo installer -allowUntrusted -pkg Driver.pkg -target /"
with administrator privileges
return input
结束
我收到错误消息,说路径Driver.pkg无效。脚本和pkg位于同一个文件夹中。
答案 0 :(得分:3)
无论是否具有管理员权限,do shell script
的工作目录始终为/
(启动驱动器的根文件夹)。
但是,你可以这样做:
tell application "Finder"
set myFolder to (quoted form of (POSIX path of (parent of (path to me) as string)))
end tell
do shell script ¬
"installer -allowUntrusted -pkg " & myFolder & "Driver.pkg -target /" ¬
with administrator privileges
如果您使用的是sudo
,则with administrator privileges
是多余的。