Respuesta actualizada:
Hay un Apple doc que muestra la forma correcta de hacerlo. Estuviste cerca.
(No lo he probado yo mismo)
do shell script "rm -rf / $ HOME / Downloads / *" nombre de usuario "USERNAME" contraseña "THEPASSWORD" con privilegios de administrador
Desde el documento :
¿Cómo obtengo privilegios de administrador para un comando?
Utilice los privilegios de administrador, nombre de usuario y parámetros de contraseña
de esta manera:
do shell script "comando" nombre de usuario "me" contraseña "mypassword" con
los privilegios de administrador nombre de usuario y contraseña son opcionales; si tu
omita el nombre de usuario, do shell script asume que es el usuario actual;
Si omite la contraseña, le pedirá una contraseña cuando se ejecute.
Una vez que un script esté correctamente autenticado, no solicitará
Autenticación de nuevo durante cinco minutos. A partir de Mac OS X 10.4, esta gracia.
período no se extiende a ningún otro script o al resto de la
sistema; llamar manualmente sudo -k no es necesario.
Por razones de seguridad, es posible que no le digas a otra aplicación que haga shell.
Script con privilegios de administrador. Ponga el comando fuera de cualquier
Dígale al bloque, o colóquelo dentro de un bloque de Dime.
Tenga en cuenta que los privilegios de administrador le permiten cambiar cualquier
Archivo en cualquier parte del sistema. Puedes hacer que tu sistema no arranque o
incluso borrar todo el disco con unos pocos comandos bien colocados, por lo que
ejercer precaución. Mejor aún, no uses privilegios de administrador
a menos que sea absolutamente necesario. A menos que estés haciendo a nivel de sistema
desarrollo, nunca debería necesitar cambiar nada en / Sistema -
Cambiar / Biblioteca debería ser suficiente.
Nota: el uso de sudo (8) con privilegios de administrador es generalmente
innecesario y crea agujeros de seguridad; simplemente quite el "sudo".
ACTUALIZACIÓN IMPORTANTE 2
* Puedes guardar la aplicación como "ejecutar solo" (Guarda una copia editable para ti primero)
(Si solo lo guarda como Ejecutar solamente, no podrá abrirlo y editarlo más tarde una vez que haya cerrado la ventana del script).
Luego use el menú Archivo- > Exportar que le dará la opción en el diálogo de guardar para guardar como "Ejecutar solamente"
Intenteabrirelarchivomain.scptenelpaquetedelaaplicación:
Solo una ejecución evitará que alguien abra el script incrustado en la aplicación haciendo doble clic en él para abrirlo en el editor de secuencias de comandos y descubrir su contraseña. Pero hay una forma de encontrar el nombre de usuario y la contraseña en Run Only y no es tan difícil de averiguar incluso para un usuario ocasional.
PIENSARÍA DOS VECES EN PONER SU NOMBRE DE USUARIO Y CONTRASEÑA EN LA APLICACIÓN.
ACTUALIZACIÓN 3
Una pequeña idea para ayudarte si debes hacer esto es dividir el texto de la contraseña creando un nombre de variable sin sentido para mantenerlo y mezclarlo.
Cuando el código se ejecute, los volverá a ensamblar en el orden correcto.
Por ejemplo.
si la contraseña es 88>0TpFpax
Usaré:
set T to "Tp"
set Po to "88"
set TC to "Fpax"
set TEH to ">0"
do shell script "say blahbla" user name "markhunte" password (Po & TEH & T & TC as string) with administrator privileges
Tenga en cuenta que no solo la variable no significa nada ni muestra ningún sentido de orden, sino que los bits de contraseña también se mezclan dentro de ellos.
Todo hasta que se ejecute el código.
Por lo tanto, incluso si se tropiezan con la forma de hacer lo que estoy hablando acerca de la contraseña, no se reunirán en ningún orden en el que se pueda usar.