假設如今須要頻繁上傳一些文件,務必配合scp命令寫一個腳本,效率很高
影響一次上傳速度的因素不少,包含如下
# 使用/不使用壓縮命令
sshpass -p "${PASSWORD}" scp <-C> ${UPLOAD_FILE} root@${IP}:${WORKDIR}複製代碼
壓縮自己消耗時間,想一想若是壓縮過程自己就花掉不少時間,可是文件自己大小卻沒有明顯改變,很不划算,針對壓縮率很大的文件啓用壓縮上傳劃的來。算法
測試數據見下圖,結論以下:安全
# 指定/不指定壓縮命令
sshpass -p "${PASSWORD}" scp <-c aes-xxx> <-C> ${UPLOAD_FILE} root@${IP}:${WORKDIR}複製代碼
加密算法用於保護你的數據,理論上固然是越弱速度越快,可是對你數據的保護相對應也就越少,默認狀況下scp使用aes-128算法,接下來我會選擇經常使用加密算法,分別在有/無壓縮下對比bash
# 選擇不一樣的校驗證方法
sshpass -p "${REMOTE_PASS}" scp -C -c aes128-gcm <-o MACs some-methods> ${ARTIFACT} root@${REMOTE_IP}:${REMOTE_WORKDIR}複製代碼
關於完整性校驗證,默認狀況下scp使用的是hmac-md5算法。根據前兩個測試此次我默認
啓用壓縮 + aes-128gcm加密算法 + 上傳一個二進制文件,來測試不一樣校驗方法之間的差別ssh