Как проверить прогресс загрузки Mountain Lion через терминал?

9

Я загружаю Mountain Lion, я знаю, что могу контролировать ход загрузки через экран покупок в Mac App Store, но я хочу знать, смогу ли я отслеживать ход выполнения через Terminal.app с помощью команды оболочки.

conorgriffin
источник
2
Возможно, я неправильно понял вопрос, но не проще ли просто щелкнуть вкладку «Покупки» в App Store и посмотреть индикатор выполнения?
Я знаю, что вы можете сделать это на вкладке Покупки. Я хотел знать, можно ли это сделать в Терминале
conorgriffin

Ответы:

8

Конечно, агент хранилища использует папку глубоко в / private / var / folder для хранения прогресса загрузки.

На моем Mac он загружается в эту папку ниже - ваш может измениться, но вы должны иметь возможность искать с помощью mdfindи использовать com.apple.appstore duили lsвидеть, как увеличивается размер файла.

/private/var/folders/tv/xyw2rpln7hq4gw2m0prg_src0000gn/C/com.apple.appstore/497799835

В App Store есть приятная оболочка для прогресса с оценкой времени, но с bcдругими инструментами вы можете сделать то же самое в коротком упражнении со сценарием оболочки.


Если вы не можете найти свою папку, эта findкоманда может быть полезна для сужения вашего поиска ....

sudo find /var/folders -type d -name com.apple.appstore -print
bmike
источник
1
Не могли бы вы расширить свой ответ, чтобы объяснить, как найти правильный каталог?
Коноргрифин
Конечно, я только что произвел поиск методом грубой силы по последнему измененному времени и ls, но я отредактирую findкоманду, которая сработала для меня ...
bmike
5
du -h /private/var/folders/*/*/C/com.apple.appstore/*/*.pkgнапечатает размер загрузки в удобочитаемом формате. Общий размер версии, которую я сейчас скачиваю, отображается в App Store как 4,3 ГБ.
Lri
1

Я решил, что лучший способ определить загружаемый файл - написать небольшой скрипт, который извлекает файлы, открытые программой App Store storeagen.

#!/bin/bash
appstore_pid=$(ps -ef|grep storeagen|grep -v grep|awk '{print $2}')
lsof -p $appstore_pid|grep private|awk '{print $7 "\t" $9}'

Я устанавливаю appstore_pidпеременную в PID storeagen, извлекая ее из psкоманды, используя grepиawk

Затем я использую lsofсписок открытых файлов по PID storeagenи распечатываю размер файлов и путь к файлам. Если вы сделаете это несколько раз подряд, вы увидите растущие файлы и по их размеру догадаетесь, что это загрузка ОС.

conorgriffin
источник
Хорошее использование lsof ;-) Я передал greppkg секунду, так как видел lsofвозвращение четырех или более элементов в / private / var / ...
bmike
0

Я просто использовал монитор активности и наблюдал, как происходит передача данных ... И во время загрузки не было никакого другого трафика. Это не идеально, но дает вам общее представление о том, что происходит.

Крис
источник