Come posso avviare un'applicazione GUI nella cartella Applicazioni dalla riga di comando?

5

Vorrei avviare un'applicazione GUI che si trova nella cartella Applications dalla riga di comando anziché fare clic sull'icona in Finder o in Dock . La ragione per cui voglio essere in grado di lanciarlo come root usando sudo invece di lanciarlo come utente predefinito.

Quando sono entrato nelle Applicazioni, questo è quello che sembrava:

/Applications/IntelliJ IDEA 13 CE.app@16:16:42>ls -la
total 40
drwxr-xr-x@ 10 myuser  admin    340 Dec 17 14:07 .
drwxrwxr-x+ 68 root           admin   2312 Jan 20 18:00 ..
drwxr-xr-x@  6 myuser  admin    204 Dec 17 14:08 Contents
-rw-r--r--@  1 myuser  admin  11358 Dec 17 14:06 LICENSE.txt
-rw-r--r--@  1 myuser  admin    127 Dec 17 14:06 NOTICE.txt
drwxr-xr-x@ 14 myuser  admin    476 Dec 17 14:09 bin
-rw-r--r--@  1 myuser  admin     10 Dec 17 14:01 build.txt
drwxr-xr-x@ 85 myuser  admin   2890 Dec 17 14:06 lib
drwxr-xr-x@ 29 myuser  admin    986 Dec 17 14:06 license
drwxr-xr-x@ 30 myuser  admin   1020 Dec 17 14:06 plugins

La cosa divertente è che in Finder , IntelliJ IDEA 13 CE viene visualizzata come icona selezionabile che avvia l'app. Ma a livello terminale, è in realtà una directory con contenuti che non so come navigare e manipolare per emulare un clic della GUI.

    
posta amphibient 29.01.2014 - 22:18
fonte

2 risposte

5

Usa semplicemente open :

open "/Applications/IntelliJ IDEA 13 CE.app"
open -a "IntelliJ IDEA 13 CE"

Tuttavia, il prepending sudo non è sufficiente per essere eseguito come root. Dovrai eseguire il binario effettivo:

sudo /Applications/ApplicationName.app/Contents/MacOS/ApplicationName
    
risposta data 29.01.2014 - 22:36
fonte
3

Basta "cd" nel pacchetto di applicazioni, quindi nella cartella Contents e quindi nella cartella MacOS . Dovrebbe essere presente un file eseguibile che puoi eseguire normalmente. Se ci sono più file eseguibili, puoi guardare il file Contents/Info.plist all'interno del pacchetto di applicazioni e cercare la voce CFBundleExecutable , che indica il file eseguibile che viene avviato quando fai doppio clic sul pacchetto di applicazioni in Finder .

    
risposta data 29.01.2014 - 22:35
fonte

Leggi altre domande sui tag