2015-01-06 3 views
4

У меня есть сценарий для Apple, который должен установить драйвер принтера с правами администратора, за которым следует скрипт bash, который добавляет принтер на основе IP-адреса на компьютер. Скрипт яблока и файл pkg находятся в одной папке.Запустите файл PKG из той же папки, что и Applescript

Я как бы зациклился на том, как написать сценарий для яблока, чтобы pkg мог работать относительно его местоположения. Моя цель - разместить сценарий где-нибудь, а другие маки могут запускать и устанавливать один и тот же принтер. Любые идеи парней?

Это то, что я до сих пор

на бегу {вход, параметры}

do shell script "sudo installer -allowUntrusted -pkg Driver.pkg -target /" 
with administrator privileges 

return input 

конец пробег

Я получаю сообщение об ошибке говорящее путь Driver.pkg является недействительным. Сценарий и pkg находятся в одной папке.

ответ

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.

Смежные вопросы