2 votos

¿Cómo puedo enlace/llamar a una real shell script se guarda dentro de un Applescript app?

¿Cuál es la sintaxis correcta en el Applescript de abajo para hacer esta aplicación se ejecuta haciendo doble clic sobre él en lugar de cómo se ejecuta ahora con solo ejecutar el archivo Applescript en el editor de secuencias de comandos?

La secuencia de comandos de Shell se encuentra en:

ToggleHidden.app/Contents/Resources/Scripts/toggle.sh

Y se establece a ejecutar por parte de todos. (Yo lo hice chmod a+x toggle.sh)


Applescript

set bottomRoot to (path to me) as alias

 tell application "System Events"
 set myPath to (POSIX path of container of bottomRoot)

end tell

set scriptPath to quoted form of (myPath & "/toggle.sh")

do shell script scriptPath

Secuencia de comandos de Shell

#!/bin/sh

STATUS=`defaults read com.apple.finder AppleShowAllFiles

if [ $STATUS == TRUE ];

then

defaults write com.apple.finder AppleShowAllFiles FALSE

else

defaults write com.apple.finder AppleShowAllFiles TRUE

fi

killall Finder

sleep .5

open .

2voto

adayzdone Puntos 1258

Probar:

set myPath to POSIX path of ((path to me as text) & "Contents:Resources:Scripts:toggle.sh")

1voto

Fuzzy Purple Monkey Puntos 702

También se puede simplemente hacer uso de shell script:

do shell script "killall Finder
[[ $(defaults read com.apple.finder AppleShowAllFiles) = 1 ]] && b=false || b=true
defaults write com.apple.finder AppleShowAllFiles -bool $b
sleep .5
open -a Finder"

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X