七牛雲端儲存 qiniu 測試域名被回收 檔案備份 批量下載
Markdown版本筆記 | 我的GitHub首頁 | 我的部落格 | 我的微信 | 我的郵箱 |
---|---|---|---|---|
MyAndroidBlogs | baiqiantao | baiqiantao | bqt20094 | [email protected] |
七牛雲端儲存 qiniu 測試域名被回收 檔案備份 批量下載
目錄
目錄背景
解決方法
下載 qshell
命令列操作過程
下載檔案時的詳細配置
背景
七牛儲存空間配置的測試域名30天后就被回收了,導致我之前上傳的資源無法訪問,並且去控制檯發現也完全無法下載、無法備份,因為七牛我主要是用來作為圖床的,這麼一來,我之前GitHub、部落格、markdown筆記裡面引用的圖片都全部顯示不了了,這真是個巨坑呀!
不過好在還有補救措施,我們可以先想辦法把檔案恢復,然後轉移到其他雲伺服器中。下面就是恢復檔案的教程。
導致這種情況的官方說明詳見:測試域名使用規範
其中最狠的是這句話:
每個測試域名生命週期為30個自然日,超過30日系統將自動回收,回收即為域名刪除。
解決方法
下載 qshell
注意:本工具是一個命令列工具,在Windows下面請先開啟命令列終端(CMD),然後輸入工具名稱執行,不要雙擊開啟,否則會出現閃退現象。
檔名 | 描述 |
---|---|
qshell-windows-x86.exe | Windows 32位系統 |
qshell-windows-x64.exe | Windows 64位系統 |
建議將檔名修改為 qshell,以簡化後續命令列時的輸入。
命令列操作過程
登入
account 命令簡介
例如:qshell account m1** ZM**
列舉七牛空間裡面的所有檔案
listbucket 命令簡介
例如:qshell listbucket blog-2018 list.txt
生成的檔案格式如下:
blog/180927/1G6FDLDF75.png 19963 FlOF-rOkQrjmTOY9KVDF-uUwZ9mZ 15380564227730302 image/png 0 0
獲取list.txt結果的第一列
在linux環境中可以使用cat命令:cat list.txt | awk '{print $1}' >list_final.txt
也可以通過任意方法處理(Excel、正則表示式、手動寫程式碼...),處理後的檔案格式例如:blog/180927/1G6FDLDF75.png
批量複製七牛空間中的檔案到另一個空間
batchcopy 命令簡介
例如:qshell batchcopy blog-2018 blog-2018-copy list_final.txt
從七牛空間下載資料到本地
qdownload 命令簡介
例如:qshell qdownload qshell.conf
配置檔案 qshell.conf 內容如下:
{
"dest_dir" : "D:\\七牛檔案",
"bucket" : "blog-2018-copy",
"cdn_domain" : "phz2kt37i.bkt.clouddn.com"
}
至此,全部檔案都下載下來了。
下載檔案時的詳細配置
{
"dest_dir" : "D:\\七牛檔案",
"bucket" : "blog-2018-copy",
"prefix" : "",
"suffixes" : "",
"cdn_domain" : "phz2kt37i.bkt.clouddn.com",
"referer" : "",
"log_file" : "download.log",
"log_level" : "info",
"log_rotate" : 1,
"log_stdout" : false
}
引數名 | 描述 | 可選引數 |
---|---|---|
dest_dir | 本地資料備份路徑,為全路徑 | N |
bucket | 空間名稱 | N |
prefix | 只同步指定字首的檔案,預設為空 | Y |
suffixes | 只同步指定字尾的檔案,預設為空 | Y |
cdn_domain | 設定下載的CDN域名,預設為空表示從儲存源站下載,【該功能預設需要計費】 | N |
referer | 如果CDN域名配置了域名白名單防盜鏈,需要指定一個允許訪問的referer地址 | N |
log_level | 下載日誌輸出級別,可選值為debug ,info ,warn ,error ,預設info |
Y |
log_file | 下載日誌的輸出檔案,如果不指定會輸出到qshell工作目錄下預設的檔案中 | Y |
log_rotate | 下載日誌檔案的切換週期,單位為天,預設為1天即切換到新的下載日誌檔案 | Y |
log_stdout | 下載日誌是否同時輸出一份到標準終端,預設為false | Y |
2018-11-10