J'ai suivi exactement le même processus lorsque je jouais avec logKext. La commande Unix que vous pouvez explorer est /usr/bin/expect.
Il peut rapidement devenir complexe, mais il agit essentiellement comme un médiateur entre vous et les programmes que vous exécutez, de sorte qu'il peut fournir des réponses que vous auriez normalement dû taper. Par exemple, j'ai construit ce script pour pouvoir automatiser le processus d'impression de la sortie logKext. Vous devriez reconnaître toutes les commandes que vous devriez normalement taper vous-même dans logkextClient...
#!/usr/bin/expect -f
spawn logkextClient
expect "logKext Password:"
send "mylogkextpassword\r"
expect "logKextClient > "
send "print\r"
expect "logKextClient > "
send "quit\r"
close
Dans les versions 10.5 et 10.6, cela fonctionnait bien pour sortir l'impression logKext afin de pouvoir l'insérer dans un e-mail et l'envoyer. Cependant, j'étais connecté en tant que Root au terminal, donc c'était simple.
Théoriquement Si vous n'étiez pas connecté en tant que Root, vous pourriez dire à la place
#!/usr/bin/expect -f
spawn sudo -k logkextClient
expect "Password:"
send “myrootpassword\r”
expect "logKext Password:"
send "mylogkextpassword\r"
expect "logKextClient > "
send "print\r"
expect "logKextClient > "
send "quit\r"
close
(à noter que j'ai utilisé sudo -k
intentionnellement d'être cohérent et d'exiger un mot de passe à chaque fois)
Vous pouvez donc utiliser votre éditeur de ligne de commande préféré pour créer ce script, faire un chmod +x
et faites-le glisser vers le dock pour le lancer... En théorie.
Mais j'ai eu des problèmes avec Mavericks pour que /usr/bin/expect se comporte correctement avec sudo, donc cela ne fonctionne pas pour moi dans d'autres scripts comme cela devrait. Et je n'ai plus du tout installé logKext pour les tests de toute façon.
Mais je pense que c'est la direction que vous souhaitez prendre.
Bonne chance !