Problemas al crear el instalador OS X con AppleScript

2

Estoy intentando crear un instalador de OS X de inicio (incluidos Mavericks, Yosemite y El Capitan) en un disco externo con AppleScript. Pero ahora tengo algunos problemas. Aquí está el código:

display dialog "Which version of OS X Installation would you like to create?" with icon caution buttons {"OS X Mavericks", "OS X Yosemite", "OS X El Capitan"}
if the button returned of the result is " OS X El Capitan" then
    tell application "Terminal"
        activate
        do shell script "sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app --nointeraction"
    end tell
end if

Mi dirección de trabajo es:

  1. Elija la versión que desea crear.

  2. Active la Terminal y pida a la Terminal que ejecute el código (Funciona bien dentro de la Terminal):

    sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app --nointeraction
    

Hay un error (imagen abajo) cuando intento ejecutar el script. Parece que hay algo mal con la ruta, y parece que AppleScript no puede reconocer una ruta con un espacio como este: Install\ OS\ X\ EL\ Capitan.app .

Probé el siguiente script (este funciona bien)

set pathwithSpaces to "/Users/John/Desktop/This is a test.docx"
do shell script "rm -r " & quoted form of pathwithSpaces

Pero mi actualización aún no funciona.

¿Podrías darme algunos consejos? ¿O estoy en una dirección equivocada?

    
pregunta Vincent Sun 10.03.2016 - 05:57

1 respuesta

3

Solo una sugerencia sobre cómo comenzar pero demasiado para agregarlo como comentario:

Comience con esto:

set the_results to (display dialog "Which version of OS X Installation would you like to create?" with icon caution buttons {"OS X Mavericks", "OS X Yosemite", "OS X El Capitan"})
set button_returned to button returned of the_results
if button_returned is "OS X El Capitan" then tell application "Terminal"
    activate
    set currentTab to do script ("sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app --nointeraction;")
end tell
if button_returned is "OS X Yosemite" then tell application "Terminal"
    activate
    ...

Aún tienes que manejar la contraseña sudo .

    
respondido por el klanomath 10.03.2016 - 07:56

Lea otras preguntas en las etiquetas