Come aprire uno script di shell in una nuova finestra di Terminale ed eseguirlo con i privilegi di amministratore

3

Ho bisogno di aprire a livello di programmazione uno script di shell in una finestra di Terminale ed eseguirlo con i privilegi di amministratore. Sto usando osascript perché mostra un comodo prompt per un login / password di amministratore.

Attualmente sto usando questo:

osascript -e 'do shell script "open -a Terminal \"'"$appDir"'\"" with administrator privileges'

Il problema è che, anche dopo aver inserito le credenziali nel prompt di OS X, lo script appena aperto implorerà una password al primo comando sudo.

Come faccio a passare le credenziali di amministratore allo script aperto?

    
posta DavidD 15.11.2014 - 12:29
fonte

1 risposta

2

Vorrei provare a scrivere un semplice script:

#!/bin/bash
sudo /usr/bin/id

salva questo come something.command , cambia le sue autorizzazioni in eseguibile con chmod +x , quindi esegui questo da AppleScript con

osascript -e 'do shell script "open -a Terminal ./something.command"'

Invece di /usr/bin/id puoi chiamare qualsiasi script tu abbia bisogno di eseguire con i privilegi di amministratore allora.

EDIT:

Funzionerà:

osascript -e 'do shell script "sudo /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal" with administrator privileges'
    
risposta data 15.11.2014 - 14:14
fonte

Leggi altre domande sui tag