bsub를 통해 플랫폼 LSF에 전달된 명령에서 프로세스 교체를 수행하려고 합니다.
작업을 제출한 작업자 노드에서는 POSIX 호환 기능이 아니기 때문에 프로세스 교체가 활성화되지 않습니다.
따라서 해당 기능을 활성화한 다음 bsub 내에서 두 번째 프로세스를 제출해야 합니다. 여기 있는 문서를 사용하여 이 작업을 수행했지만 버그가 없는 것은 아닙니다. 최종 EOF 표시는 읽혀지지 않습니다.warning: here-document at line 4 delimited by end-of-file (wanted 'EOF')
set +o posix;
bash <<EOF
some.program -1 <(gunzip -c some.file) -2 <(gunzip -c some.file);
EOF
bsub에 단일 문자열로 제출하세요.
set +o posix;\nbash <<EOF\nsome.program -1 <(gunzip -c some.file) -2 <(gunzip -c some.file);\nEOF
최종 EOF를 올바르게 읽는 방법에 대한 제안 사항이 있습니까? 말씀드린 대로 모든 것이 잘 돌아가고 있으니 코드만 정리하면 됩니다.
답변1
쉘은 EOF 문자열이 그 자체로 완전한 줄에 있을 것으로 예상합니다. \n
그 뒤에 하나만 추가하면 됩니다(mybe a do Nothing : after도 도움이 될 수 있습니다).
set +o posix;\nbash <<EOF\nsome.program -1 <(gunzip -c some.file) -2 <(gunzip -c some.file);\nEOF\n:
참고: 이 내용을 댓글로 작성하려고 했는데 전체 내용을 작성하기에는 댓글 공간이 부족합니다.