Eu tenho um applet que eu fiz usando o Applescript, que abre um aplicativo e, depois de carregado, executa um script de shell que descarrega o Spotlight. Eu preciso fazê-lo, em seguida, esperar por mim para terminar de usar o aplicativo relevante antes de executar outro script de shell para carregar o Spotlight novamente.
Meu código atualmente se parece com:
set appname to “Applications/Cubase 5.app”
tell application appname to launch
repeat until application appname is running
delay 1
end repeat
if application appname is running then
do shell script "sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist" password "YOUR_PASSWORD" with administrator privileges
end if
activate appname
Eu tentei de tudo, mas não consigo descobrir. Eu encontrei e modifiquei este script com meu conhecimento limitado, mas não entendo como ele funciona
Qual código eu preciso adicionar para que ele espere que eu encerre o aplicativo para executar o segundo script de shell que eu sei que é:
do shell script "sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist" password "YOUR_PASSWORD" with administrator privileges
qual iria recarregar o Spotlight?
Eu vim com o seguinte que compila mas não faz como esperado:
set appname to “Applications/Cubase 5.app”
tell application appname to launch
repeat until application appname is running
delay 1
end repeat
if application appname is running then
do shell script "sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist" password "YOUR_PASSWORD" with administrator privileges
end if
activate appname
repeat until application appname is not running
delay 1
end repeat
if application is not running then
do shell script "sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist" password "YOUR_PASSWORD" with administrator privileges
end if
Dá-me o erro Não é possível executar o aplicativo . Eu posso ver que algo está faltando, só não sei o quê.
Sou novo na Apple e no Applescript e uma resposta será muito apreciada.