for 루프에서 일시 중단 된 프로세스 재개 실행 중입니다. for i in ull-*.pbm;

bash에서 실행 중입니다.

for i in ull-*.pbm; do convert $i tmp2/$i.pdf ; done

나는 Ctrl-Z달리기의 중간에 fg작업 ID가 있습니다. 그러나 나머지 반복은 계속 완료되지 않습니다. 왜 궁금해?



답변

Ctrl-Z현재 실행중인 프로세스를 일시 중단합니다. 표현

for i in ull-*.pbm; do convert "$i" "tmp2/$i.pdf" ; done

를 제외한 모든 명령 convert(즉 for, in, dodone)입니다 bash현재 쉘에서 실행의 키워드와 쉘 자체를 중단 할 수없는 (그리고 어쨌든 당신의 의도되지 않습니다). 당신이 명중 할 때 그래서 Ctrl-Z, 및 명령 convert의 중단을 처리하는 데 아무 이상이 없기 때문에, 루프는 단순히 종료됩니다.

전체 루프를 일시 중단하려면 서브 쉘 환경에서 실행하십시오.

(for i in ull-*.pbm; do convert "$i" "tmp2/$i.pdf" ; done)

내가 아는 유일한 쉘은 현재 쉘에서 전체 루프를 일시 중단 할 수 있다는 것입니다 zsh.