리디렉션된 각 표준 출력에 대한 프로세스 생성

리디렉션된 각 표준 출력에 대한 프로세스 생성

그래서 포트 스캐너(masscan)가 있고 그 출력을 생성된 각 IP:포트 조합이 특정 웹 서비스를 제공하는지 확인하는 명령줄로 출력을 리디렉션하고 싶습니다.

따라서 다음과 같이 진행될 수 있습니다.

masscan 0.0.0.0/0 -p8080 --max-rate 300000 | ./scanner.py

scanner.py그러나 IP 범위가 큰 경우 하나씩 처리해야 하므로 속도가 느려집니다 .

이 작업을 어떻게 병렬로 수행할 수 있나요? 즉, 각 IP를 개별적으로 리디렉션하고 stdin으로의 리디렉션을 병렬로 처리하는 프로세스를 생성하여 스캔 속도를 더 빠르게 만듭니다.

답변1

난 당신 이 그것 으로 뭔가 를 할 수 있을 거라 생각 했어요 xargs. 예를 들어 다음과 같습니다.

masscan 0.0.0.0/0 -p8080 --max-rate 300000 | \
    xargs -L1 -I+ -P200 sh -c "echo '+' | ./scanner.py"

./scanner.py이는 각각 의 데이터를 처리하는 최대 200개의 병렬 프로그램을 실행합니다 masscan.

관련 정보