Chiamare un'app dal terminale tramite script

3

Cerco di chiamare un'applicazione dalla console e passare un argomento. Questo è lo script che sto usando:

#!/bin/sh

open -a "/Applications/MyApp.app/" $1

In qualche modo il sistema operativo non è soddisfatto di questo e si lamenta:

FSPathMakeRef(/Applications/MyApp.app) failed with error -43.

Che cosa posso fare?

    
posta Stefan Müller 12.09.2014 - 09:19
fonte

2 risposte

3

Sembra che /Applications/MyApp.app in realtà non esiste.

Puoi testarlo nel tuo script, forse in questo modo:

#!/bin/sh
APP=/Applications/MyApp.app
if [ ! -d "$APP" ]; then
  echo >&2 "$0: $APP not found."
  exit 1
fi
exec open -a "$APP" "$@"
    
risposta data 13.09.2014 - 20:51
fonte
3

Puoi assicurarti che l'applicazione esista prima di chiamare open su di essa! Ecco un po 'di Bash per fare questo:

if [ -d "/Applications/MyApp.app" ]; then
    open -a "/Applications/MyApp.app"
else
    echo "Application /Applications/MyApp.app does not exist!"
fi
    
risposta data 13.09.2014 - 22:30
fonte

Leggi altre domande sui tag