Come aggiornare l'applicazione App Store dalla riga di comando?

18

Vorrei forzare un aggiornamento delle applicazioni App Store dalla riga di comando.

Come posso fare questo?

    
posta sorin 09.05.2011 - 15:31
fonte

3 risposte

6

Apple non fornisce un helper per la riga di comando o alcuna classe di cacao con script che è possibile utilizzare per l'automazione. A differenza dell'aggiornamento software generale, che consente aggiornamenti e installazioni pronti all'uso, è possibile eseguire script del processo di selezione dei pulsanti con il mouse tramite Automator.

Tuttavia, l'app store è stato decodificato e rilasciato open source così come un modulo binario :

L'installazione è veloce e sembra abbastanza affidabile sulla versione attuale di OS X 10.11:

brew install argon/mas/mas 

Con la sorgente rilasciata, mi aspetterei qualche altra implementazione di questo strumento, forse anche uno script con python.

Se qualcuno è collegato al mac (windowmanager è in esecuzione), è possibile utilizzare Automator e la funzione "watch me do do" per automatizzare gli aggiornamenti e archiviare la password del proprio negozio nello script in modo abbastanza insicuro.

Ecco due tutorial per iniziare se questo soddisfa le tue esigenze.

link

link

Una volta che hai uno script funzionante, puoi usare il comando di riga di comando open per dare il via.

Se l'app di App Store espone tale funzione allo scripting, avrai più opzioni dalla riga di comando. Sarebbe facile usare sdef , sdp e gen_bridge_metadata a scaricare l'intero dizionario e scrivere script usando Ruby dalla riga di comando, ma al momento l'opzione migliore sarebbe utilizzare lo strumento da riga di comando mas .

    
risposta data 08.06.2011 - 23:53
fonte
4

L'App Store semplicemente non è adatto per l'amministrazione. A malapena un gestore di quasi pacchetti, non è quasi altrettanto utile o affidabile dei veri e propri gestori di pacchetti come pkgsrc, porte FreeBSD, aptitude, RPM, macports o persino updateupdate. Nella mia esperienza, è imprevedibile e la barba per gli sviluppatori commerciali di impegnare le loro merci. Quindi, c'è un solo modo razionale e responsabile, come amministratore competente, per lavorare con App Store:

 sudo launchctl unload -w /System/Library/LaunchAgents/com.apple.store_helper.plist

 sudo launchctl unload -w /System/Library/LaunchAgents/com.apple.storeagent.plist

 sudo mkdir /System/Library/LaunchAgents\ \(disabled\)/

 sudo mv /System/Library/LaunchAgents/com.apple.store* /System/Library/LaunchAgents\ \(disabled\)/

E lascia perdere la tua mente, non ti disturberà più. ; -)

Usa ARD invece, sebbene non sia un gestore di pacchetti, gestisce pacchetti, installazioni, aggiornamenti e aggiornamenti, farà ciò che vuoi, ti farà risparmiare tempo e non ti deluderà:

Per Apple Remote Desktop 3, per 10.9:

Per prima cosa controlla la guida all'amministratore per convincerti che questa è la strada da percorrere:

curl -Ok http://images.apple.com/ca/fr/remotedesktop/pdf/ARD3_AdminGuide.pdf

    open ARD3_AdminGuide.pdf

Quindi installa:

curl -Ok http://supportdownload.apple.com/download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/Mac_OS_X/downloads/031-2845.20140313.rerft/RemoteDesktopAdmin372.dmg

hdiutil attach -quiet -noverify -nobrowse -noautoopen RemoteDesktopAdmin372.dmg

sudo installer -pkg /Volumes/Apple\ Remote\ Desktop\ 3.7.2\ Admin\ Update/RemoteDesktopAdmin372.pkg -target /

ma potrebbe generare un errore divertente se non si esegue 10.9 o se non è installata alcuna versione precedente di ARD e, in tal caso, provare:

pkgutil --expand /Volumes/Apple\ Remote\ Desktop\ 3.7.2\ Admin\ Update/RemoteDesktopAdmin372.pkg ARDexpanded/

o con uguale effetto (o / qui, non è necessario utilizzare sia pkgutil che xar ... sto solo approfondendo):

mkdir ARDexpanded

cd ARDexpanded

xar -xf /Volumes/Apple\ Remote\ Desktop\ 3.7.2\ Admin\ Update/RemoteDesktopAdmin372.pkg

E non abbiamo più bisogno dell'immagine del disco, quindi espellilo:

hdiutil detach -quiet /Volumes/Apple\ Remote\ Desktop\ 3.7.2\ Admin\ Update/

E ora cosa vedrai se tu

cd ARDexpanded/RemoteDesktopAdmin372.pkg/

ls

è

    Bom         PackageInfo Payload     Scripts

Cosa c'è nel file Payload, che è un archivio cpio compresso con gzip, è ciò che stai cercando. Pertanto, con alcuni comandi inviati tramite pipe, possiamo accedere al pacchetto dell'app:

cat Payload | gzip -d - | cpio -id

ls

restituisce:

    Applications Bom          Library      PackageInfo  Payload      Scripts

E hai quasi finito.

cp -R Applications/Remote\ Desktop.app /Applications/

Ora hai installato Apple Remote Desktop Admin 3.7.2

Quindi tutto ciò che resta da fare è acquistare la tua licenza:

open http://store.apple.com/us_smb_78313/product/D6020Z/A/apple-remote-desktop-3-volume-licenses-20-seats-price-is-per-seat

Avvia / Applicazioni / Remoto \ Desktop.app e serializza. E fai un po 'di lavoro.

Per 10.6 Snow Leopard, avrai bisogno di una versione leggermente precedente di ARD:

curl -Ok http://images.apple.com/ca/fr/remotedesktop/pdf/ARD3_AdminGuide.pdf

curl -Ok http://supportdownload.apple.com/download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/Mac_OS_X/downloads/041-6789.20120917.xD6TR/RemoteDesktopAdmin353.dmg

hdiutil attach -quiet -noverify -nobrowse -noautoopen RemoteDesktopAdmin353.dmg

sudo installer -pkg /Volumes/Apple\ Remote\ Desktop\ 3.5.3\ Admin\ Update/RemoteDesktopAdmin353.pkg -target /

e se ti restituisce questo:

    installer: Cannot install on volume / because it is disabled.
    installer: This update could not find Remote Desktop on this volume.

quindi prova:

pkgutil --expand /Volumes/Apple\ Remote\ Desktop\ 3.5.3\ Admin\ Update/RemoteDesktopAdmin353.pkg ARD353

hdiutil detach -quiet /Volumes/Apple\ Remote\ Desktop\ 3.5.3\ Admin\ Update

analisi dettagliata del payload:

    cd ARD353/RemoteDesktopAdmin353.pkg/

    ls

restituisce:

    Bom         PackageInfo Payload     Scripts

Quindi corri:

cat Payload | gzip -d - | cpio -id

ls

restituisce:

Applications Bom          Library      PackageInfo  Payload      Scripts

E hai quasi finito:

cp -R Applications/Remote\ Desktop.app /Applications/

acquista la tua licenza:

open http://store.apple.com/us_smb_78313/product/D6020Z/A/apple-remote-desktop-3-volume-licenses-20-seats-price-is-per-seat

Avvia / Applicazioni / Remoto \ Desktop.app e serializza. E fai qualcosa.

    
risposta data 20.04.2014 - 12:46
fonte
1

Puoi utilizzare lo strumento softwareupdate .

sudo softwareupdate -l

Elenca tutti gli aggiornamenti disponibili.

sudo softwareupdate -ia

Installa tutti gli aggiornamenti disponibili.

    
risposta data 24.08.2015 - 13:14
fonte

Leggi altre domande sui tag