Shell並行執行命令加速方法


需求

運維服務器需要把log拷到本地分析,
逐條scp太慢,希望並行執行。

思路

對於時序沒有嚴格要求的命令,
使用&將每條指令后台運行,
無需等待上條結束繼續執行下條。
最后配合wait等待全部執行完畢

實現

#!/bin/bash
for host in server{0..35}
do
(
scp user@$host:/tmp/log*.tar.gz ~/logs/
)&
done
wait


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM