Esegui app come un altro utente (automator) [duplicato]

1

mi piacerebbe poter aprire un'app come utente diverso. Ad esempio, PC1 è il mio account principale e PC7 è il mio secondario.

Posso ottenere l'effetto nel terminale usando

su - pc7 inserisci la password /Applications/Application.app/Contents/MacOS/ApplicationName

Come posso usare l'automatore per creare uno script / app qualunque cosa faccia questo con un semplice doppio clic?

Grazie

    
posta user74469 31.03.2014 - 12:33
fonte

3 risposte

1

Non puoi avviare banalmente applicazioni grafiche come un altro utente.

È richiesto un processo proxy

Per avviare un'applicazione grafica come un altro utente, quell'utente deve essere connesso a una sessione grafica e avere un processo in esecuzione all'interno della propria sessione in grado di avviare l'applicazione desiderata.

Prima di OS X 10.9, questo potrebbe essere approssimato tramite il comando launchctl . Vedi Come avviare un'applicazione GUI nella sessione grafica di un altro utente per una discussione dettagliata.

    
risposta data 31.03.2014 - 14:35
fonte
0

Puoi semplicemente salvare il tuo esempio come file di testo aggiungendo il suffisso .command o .sh ad esso per eseguirlo con un doppio clic. AppleScript può anche chiamare uno script .sh con

do shell script "/path/to/yourscript.sh"

Non sono sicuro che Automator possa fare lo stesso.

Ma su funziona fondamentalmente solo con i comandi che non usano la GUI Aqua di Mac OS X. Quindi se provi ad aprire un'applicazione come ad esempio TextEdit in questo modo, non sarà possibile aprire una finestra sul desktop.

    
risposta data 31.03.2014 - 13:01
fonte
0

Se avessi dovuto aprire AppleScript, dovresti utilizzare il seguente formato:

do shell script "/usr/bin/su - " & user & " -c " & "'" & cmd & "'" with administrator privileges password "blahblah"

Se si desidera creare uno script di shell, è necessario chmod a+x del file e scrivere in questo modo:

#!/usr/bin/env bash
su -c "/Applications/Application.app/Contents/MacOS/ApplicationName" -s /bin/sh pc7

Oppure puoi scriverlo come lo scriverei:

#!/usr/bin/bash
su -c "/Applications/Application.app/Contents/MacOS/ApplicationName" -s /bin/sh pc7
  1. Salva il file come YourScritpt.sh
  2. Aggiungi permessi eseguibili digitando chmod a+x YourScript.sh nel Terminale
  3. Fai clic con il pulsante destro del mouse sul Finder e seleziona "Apri con" e seleziona "Altro"
  4. Seleziona Terminale come applicazione per aprire il file (cambia in Tutte le applicazioni)
  5. Non è necessario selezionare "Apri sempre con"
risposta data 31.03.2014 - 14:21
fonte

Leggi altre domande sui tag