如何通过终端查看山狮的下载进度?


9

我正在下载Mountain Lion,我知道我可以通过Mac App Store购买屏幕监视下载进度,但是我想知道是否可以使用Shell命令通过Terminal.app监视进度。


2
我可能对这个问题有误解,但是单击App Store中的“购买”选项卡并查看进度条是否容易得多?

我知道您可以在“购买”标签中进行此操作。我想知道是否可以在航站楼中完成
conorgriffin 2012年

Answers:


8

当然-storeagent使用/ private / var / folders内的一个文件夹来保存下载进度。

在我的Mac上,它正在下载到下面的该文件夹中-您的文件夹可能会更改,但是您应该可以使用mdfind并使用com.apple.appstore进行搜索,du或者ls查看文件大小是否增加。

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

App Store在进度方面有一个更好的包装,带有时间估计,但是使用bc和其他工具,您可以在简短的Shell脚本练习中完成相同的操作。


如果找不到文件夹,此find命令可能会用于缩小搜索范围...。

sudo find /var/folders -type d -name com.apple.appstore -print

1
您能否扩大答案以解释如何找到正确的目录?
conorgriffin

当然-我只是根据上次修改的时间和ls进行了蛮力搜索-但是我将在一个find对我
有用

5
du -h /private/var/folders/*/*/C/com.apple.appstore/*/*.pkg将以人类可读的格式打印下载的大小。我当前正在下载的版本的总大小在App Store中显示为4.3 GB。
Lri 2012年

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变量来将变量设置为PIDstoreagenpsgrepawk

然后,我使用lsofPID的PID列出打开的文件,storeagen并打印出文件的大小和文件路径。如果您连续进行多次,则可以看到正在增长的文件,并可以通过其大小很好地猜测它是操作系统下载的文件。


lsof的好用法;-) grep因为我已经lsof在/ private / var / ...中看到了四个或更多返回项,所以我用管道传输了pkg的
秒数

0

我只是使用活动监视器,观察正在发生多少数据传输...,并确保下载时没有其他流量。它并不完美,但可以让您大致了解正在发生的事情。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.