1
我用awscli下載文件:恢復中斷S3下載與awscli
$ aws s3 cp s3://mybucket/myfile myfile
但下載被中斷(計算機進入睡眠模式)。我怎樣才能繼續下載? S3支持Range頭,但awscli s3 cp
不允許我指定它。
該文件不公開,因此我無法使用curl手動指定標題。
我用awscli下載文件:恢復中斷S3下載與awscli
$ aws s3 cp s3://mybucket/myfile myfile
但下載被中斷(計算機進入睡眠模式)。我怎樣才能繼續下載? S3支持Range頭,但awscli s3 cp
不允許我指定它。
該文件不公開,因此我無法使用curl手動指定標題。
awscli工具中存在一個「隱藏」命令,允許較低級別的訪問S3:s3api
†它不太友好(沒有s3:// URL並且沒有進度條),但它支持範圍說明符在get-object
:
--range (string) Downloads the specified range bytes of an object. For
more information about the HTTP range header, go to
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
這裏是如何繼續下載:
$ size=$(stat -f%z myfile) # assumes OS X. Change for your OS
$ aws s3api get-object \
--bucket mybucket \
--key myfile \
--range "bytes=$size-" \
/dev/stdout >> myfile
可以使用pv一個基本的進度條:
$ aws s3api ... /dev/stdout | pv >> myfile
†在git中,s3
是瓷器,而s3api
是plubming。