OS X instalador de línea de comandos rastrea el progreso

0

Estoy intentando instalar una aplicación a través de la línea de comandos en OS X. Esto es lo que estoy intentando:

hdiutil attach app.dmg
cd /Volumes/appvolume
installer -pkg app.pkg -target "/"

Esto funciona bien, sin embargo, no puedo obtener una salida del comando installer desde la cual puedo capturar la cantidad de progreso realizado y el tiempo / cantidad restante. Probé la opción verbose

installer -verbose -pkg app.pkg -target "/"

Pero esto solo imprime el resultado como instalador: optimizando el sistema para el software instalado ....... , etc., nada sobre el progreso. Pero seguramente sabe sobre el progreso, porque cuando instalo la aplicación haciendo doble clic, la ventana del instalador que aparece muestra una barra de progreso determinista que progresa gradualmente y alcanza su máxima extensión cuando se completa la instalación.

¿También puedo capturar el estado de progreso a través de la línea de comando installer ?

    
pregunta SexyBeast 20.12.2015 - 19:28

2 respuestas

2

Estabas cerca: la opción que estás buscando es -verbose R :

Usage: installer [-help] [-dominfo] [-volinfo] [-pkginfo] [-allowUntrusted] [-dumplog]
             [-verbose | -verboseR] [-vers] [-config] [-plist]
             [-file <pathToFile>] [-lang <ISOLanguageCode>] [-listiso]
             [-showChoicesXML] [-applyChoiceChangesXML <pathToFile>]
             [-showChoicesAfterApplyingChangesXML <pathtoFile>]
             -pkg <pathToPackage>
             -target <[DomainKey|MountPoint]

Aquí está la salida de installer instalando un Firefox 43.0.1 .pkg creado con AutoPkgr con esa bandera:

timmay:~ da4$ sudo installer -pkg /Users/da4/Desktop/auto/Firefox-43.0.1.pkg -target / -verboseR
installer: Package name is Firefox-43.0.1
installer: Upgrading at base path /
installer:PHASE:Preparing for installation…
installer:PHASE:Preparing the disk…
installer:PHASE:Preparing Firefox-43.0.1…
installer:PHASE:Waiting for other installations to complete…
installer:PHASE:Configuring the installation…
installer:STATUS:
installer:%9.883908
installer:PHASE:Writing files…
installer:%30.674055
installer:PHASE:Writing files…
installer:%51.530939
installer:PHASE:Optimizing system for installed software…
installer:PHASE:Validating packages…
installer:PHASE:Validating packages…
installer:%97.750000
installer:STATUS:
installer:PHASE:Finishing the Installation…
installer:STATUS:
installer:%100.000000
installer:PHASE:The software was successfully installed.
installer: The upgrade was successful.
timmay:~ da4$

No estoy exactamente seguro de cuándo se agregó la opción -verboseR al instalador de OS X, pero está presente en la versión 10.9+.

    
respondido por el da4 20.12.2015 - 20:15
0

El envío de ^ + T a un proceso en ejecución en Terminal solicitará el "estado" de ese proceso. Esto es una retención de BSD anterior y es compatible con la mayoría de los shells (bash, csh, etc.).

Se puede encontrar una conversación más detallada con un ojo hacia Apple específicamente aquí .

    
respondido por el agentroadkill 20.12.2015 - 19:56

Lea otras preguntas en las etiquetas