《Disney +》 迪士尼、Marvel、彼思、星球大戰…  彩虹社Vtuber「笹木咲」「椎名唯華」連帽衫發售!   與皮克敏一起讓城市綻放花朵吧!《Pikmin Bloom》正式發表!   《Stranger Of Paradise Final Fantasy Origin》開發者專訪! 何謂「FF風格」與「Team NINJA風格」的融合?   手心大小玩偶「Pokémon fit」系列確定推出神奧地區的寶可夢!   【悲報】KOF少女遊戲「THE KING OF FIGHTERS for GIRLS」即將終止服務   《原神》1.6版本更新:在盛夏來場激情大冒險!   「必備精選優惠」進駐PlayStation Store   看《Tchia》裡的「靈魂附身」如何讓你大玩變身 

Linux 使用 parallel 來同時平行多工處理

商業

Linux 於 Shell 不想寫程式,又想要程式可以平行處理,可以使用 parallel 來處理。

Linux 使用 parallel 來同時平行多工處理

Parallel 的程式簡介

  • parallel - build and execute command lines from standard input in parallel

parallel 安裝步驟

  • sudo apt install parallel

parallel 的功能非常多,建議先 man parallel 來查看,下面只有先列列範例參考看看:

  • seq -w 0 100 | parallel -j 8 touch {}.txt
  • seq -w 0 9999 | parallel -j 8 rm pict{}.jpg
  • find . -name '.jpg' | parallel convert -geometry 120 {} {}_thumb.jpg
  • find . -type d -name ".svn" -print | parallel rm -rf # 取代 xargs, find . -type d -name ".svn" -print | xargs rm -rf
  • cat file.txt | parallel -j 8 --pipe -L 50000 import_script
    • -j 8:並行 jobs 的數量,不想並行執行可以設為 1。若不加 -j,則預設為每個 CPU 執行一個 job
    • --pipe:從 stdin 讀取, 再將 stdin 的資料分給各個jobs
    • -L N: 一次最多讀取N行

使用 parallel 同時傳送命令到各台機器

  • echo "command" | parallel --onall --slf servers.txt
    • ex: echo "ls" | parallel --onall --slf servers.txt # servers.txt (w1.example.com, w2.example.com.. 一行一個 domain name)
  • echo "grep QueryKeyword /var/log/apache2/access.log" | parallel –onall –slf servers.txt

相關網頁

Tsung

隨機商業新聞

Addidas