한 줄 bash 루프에서 & (앰퍼샌드) 사용 생성 할 수있는 동안 백그라운드로

이 명령을 성공적으로 사용하여 구성 파일의 변수를 변경 한 다음 루프 내에서 Python 스크립트를 실행합니다.

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py; done

DoMyScript.py종료하기 전에 각각 자체가 실행하는 데 약 30 초가 걸리므로 다음 배경을 생성 할 수있는 동안 백그라운드로 다시 연결하고 싶습니다.

다음과 같이 앰퍼샌드를 추가하여 익숙한 것을 시도했습니다.

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py &; done

그러나 이로 인해 아래 오류가 발생합니다.

-bash : 예기치 않은 토큰`; ‘근처의 구문 오류



답변

;후를 삭제하십시오 &. 이것은 구문 요구 사항입니다

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py & done


답변

1_CR의 답변에 대한 Stephane의 의견을 감안할 때 아마도 다음을 원할 것입니다.

for i in {114..255}; do { echo $i > numbers.txt && python DoMyScript.py; } & done


답변

잃어버린 ;:

for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py & done


답변