나는 4개의 코어와 4개의 Python 스크립트 파일을 가지고 있습니다 preprocess0.py
. GNU를 사용하여 이 4 개의 프로세스를 병렬로 preprocess1.py
실행 하고 싶습니다 . 입력 파일이 없습니다. 입력 파일은 각 파일 내에 하드코딩되어 있습니다(읽기 전용이므로 중요하지 않음). 결과를 ... 파일 로 출력하고 싶습니다 . 내가 아는 한:preprocess2.py
preprocess3.py
parallel
*.py
file0.csv
file3.csv
parallel -j4 --progress python preprocess*.py ::: '>' ./file{}.csv
하지만 마치 입력을 기다리는 것처럼 아무 것도 쓰지 않고 그대로 앉아 있습니다.
답변1
구문은 다음과 같습니다.
parallel -j4 --progress 'python {} > ./file{}.csv' ::: preprocess*.py
filepreprocess1.py.csv
그러면 ...이라는 파일이 생성됩니다 .
parallel -j4 --progress 'python {} > ./file{#}.csv' ::: preprocess*.py
file1.csv
작업 번호를 사용하고 일부 ... 파일을 얻는 대신 . 또는 파일 이름 번호를 추출하려면 다음을 수행하십시오.
parallel -j4 --progress 'python {} > ./file{=s/[^\d]//g=}.csv' ::: preprocess*.py