一、qshell安裝
服務器位centos
最近在開發nuxt項目,部署時由於本地的windows換行符和服務器上linux環境的換行符不同,導致npm run build生成的js文件名不同,本地上傳到七牛雲的文件名與服務器上不符。
於是直接在服務器上傳文件。
使用七牛的qshell
根據文檔運行命令下載qshell
wget http://devtools.qiniu.com/qshell-v2.3.3.zip
完成后解壓
unzip qshell-v2.3.3.zip
沒有unzip需要先安裝
yum install unzip -y
解壓后就會出現不同系統的幾個可執行文件
我們可以將適用於linux64位系統的文件重命名為qshell,例如:
mv qshell_linux_x64 qshell
在當前文件夾下執行如下命令可查看版本,檢驗是否安裝成功
./qshell -v
如果想要配置全局的qshell命令,則可執行如下命令進行設置
export PATH=$PATH:/home/tools
這里的/home/tools為qshell存在的目錄
執行如下命令使配置生效
source ~/.bashrc
至此全局qshell命令安裝完畢。
二、使用qshell將文件上傳到七牛雲
添加七牛雲賬戶和秘鑰
qshell account <Your AccessKey> <Your SecretKey> <Your Name>
執行如下命令上傳文件
qshell qupload2 --src-dir=/home/jemy/temp --bucket=test --key-prefix=aaa/
--src-dir為服務器上要上傳的文件夾
--bucket為七牛雲的空間
--key-prefix為當前空間上傳文件的前綴
--rescan-local 這個參數可以在每次上傳的時候刷新緩存文件,避免上傳錯誤
使用script命令實現靜態文件上傳到cdn
"cdn:upload": "qshell qupload2 --src-dir=<靜態資源目錄> --thread-count=2000 --rescan-local --bucket=test --overwrite --key-prefix=static/ --up-host=https://upload.qbox.me",//文件上傳 "cdn:delete": "qshell batchdelete --force test -i /root/test.list.txt",//根據文件列表批量刪除文件 "cdn:refresh": "qshell cdnrefresh --dirs -i /root/dirlist.txt",//刷新緩存 "cdn:filelists": "qshell listbucket2 test -o /root/test.list.txt",//獲取七牛雲文件列表 "cdn": "npm run cdn:filelists && npm run cdn:delete && npm run cdn:upload && npm run cdn:refresh"