Applescript échoue avec l'erreur (-600) lorsqu'il est lancé plus de ssh sur Mavericks

J'ai essayé de chercher pour cela, et qui en ont vu d'autres avec des problèmes similaires, mais ne semblent pas avoir trouvé une réponse, n'importe où....

J'ai un script que je suis en train de lancer sur ssh afin que je puisse les contrôler à distance mon mac. Ce qui a travaillé précédemment avec OSX 10.8, mais ne semble plus fonctionner depuis la mise à jour 10.9.

La commande je suis en cours d'exécution est:

ssh <user>@mymac.local "osascript -e 'tell application \"iTunes\" to play'"
  • J'ai déjà mis en place des clés RSA de sorte que la session ssh s'ouvre correctement
  • Je suis connecté en tant qu'utilisateur même que le Mac est connecté et en cours d'exécution en vertu de l'
  • iTunes est en cours d'exécution sur le Mac avec cet utilisateur à la fois que le script est lancé

Le script ne parvient pas à revenir avec:

execution error: iTunes got an error: Application isn’t running. (-600)

De même, un certain nombre d'autres scripts que j'avais déjà été en utilisant aussi semblent maintenant être cassé sur 10.9 avec la même erreur, donc cela semble être lié au fait que c'est de la course via ssh, plutôt que d'un problème avec iTunes ou une application spécifique.

J'ai essayé de l'emballage les applescripts comme les applications, les sauvegarder sur le Mac distant, et ensuite les ouvrir depuis l'intérieur d'une session ssh, mais cela échoue aussi:

ssh <user>@mymac.local
open "~/Desktop/Play Music.app"

(Où " Jouer De La Musique.app') est un applescript exporté comme une application).

Ce ne signale pas une erreur au sein de la session ssh, mais un applescript boîte de dialogue s'affiche sur le mac distant:
Applescript échoue avec l'erreur (-600) lorsqu'il est lancé plus de ssh sur Mavericks

J'ai aussi plusieurs scripts qui ont été planifiées avec crontab sur mon Mac, et ce sont aussi, à défaut depuis la mise à niveau.

Je suppose que c'est une sorte de modification de la sécurité dans le cadre de Mavericks, mais je n'arrive pas à trouver un moyen de le faire fonctionner à nouveau. Quelqu'un aurait-il des solutions à ce?

  • Hé oui, Comme je l'ai dit dans le post, iTunes est ouvert à l'époque. Je suppose que cela a quelque chose à voir avec le shell ssh ne pas être en mesure de voir le processus, même si elle est en cours d'exécution avec le même compte utilisateur...
  • êtes-vous en mesure d'obtenir une simple boîte de dialogue apparaissent ?
  • aussi ce qui se passe si vous exécutez le script de la même commande dans le terminal local sur la machine
  • Je peux afficher un message d'alerte sur ssh. Donc cela fonctionne: osascript -e "tell application \"les Événements du Système\" pour afficher l'alerte \"Bonjour\"" L'alerte s'affiche sur l'écran distant
  • Si je lance le script à partir du terminal en local sur la machine, il fonctionne aussi très bien. Il semble être en cours d'exécution à travers une session ssh c'est ça le problème
  • sont à la fois des machines sur le sam réseau ? J'ai testé et fonctionne pour moi. Itunes est à jour ?
  • Hé oui, les deux machines sont sur le même réseau. Vous êtes sous Mavericks? Le problème n'est pas exclusif à iTunes - ci-dessous, également échoue lorsqu'il est exécuté sur ssh: osascript -e 'tell application "EyeTV" pour activer " est de retour: "erreur d'exécution: EyeTV ai une erreur: l'Application n'est pas en cours d'exécution. (-600)"
  • laissez-nous continuer cette discussion dans le chat

InformationsquelleAutor John Martin | 2013-11-13