Parallel

Introduction

Parallel은 병렬 실행을 위한 cli 도구입니다. 이를 활용하면 다수의 반복 작업등을 병렬 처리할 수 있어서 cli 기반의 자동화에 큰 도움을 줄 수 있습니다.

Installation

MacOS

brew install parallel

Linux

sudo apt install parallel

Usage

옵션 정리

자주 사용되는 옵션 정리

  • -k : 순서를 유지하여 진행
  • -j : 동시에 실행할 작업 수 (e.g -j 5 시 5개 단위로 병렬 실행)
  • -X : 여러개의 인자값 처리
  • -S : ssh 기반 (e.g -S root@192.168.0.1 시 해당 ssh 서버에서 실행)

Parallel scanning

Paramspider parallel scanning

cat domains | parallel -k -q python3 ~/tools/ParamSpider/paramspider.py -d {} -l high -e gif,jpg,jpeg,png,woff,txt,avi,mov,mpeg,webp,gif

Smuggler parallel scanning with 5 jobs

cat urls | parallel -j 5 -k -q python3 ~/tools/smuggler/smuggler.py -u {}

References