저는이 줄을 파이썬 스크립트에 포함하려고합니다.os.system은 둥근 괄호에 대해 불평합니다
!#/bin/bash/env python
import os
os.system("paste <(awk '!/^($|[:space:]*#)/{print $0}' file1) <(awk '!/^($|[:space:]*#)/{print $0} file2) > out_file")
bash에서 직접 실행할 때 명령을 완벽하게 적용 할 수 있습니다. 그러나 스크립트 안에, 내가 얻을 :
sh: -c: line0: syntax error near unexpected token `('
문제가 계속 간단하게 사용하는 경우 :
os.system("paste <(cat file1) > output_file")
어떤 아이디어?
기본 셸이'sh'이고'bash'가 아닌 것 같습니다. 그리고 두 명령 줄은'sh'로는 유효하지 않습니다. – abarnert
@MartijnPieters : 그는'서브 프로세스 '를 사용하지 않고'os.system'을 사용하고 있습니다. 유닉스 시스템에서, libc 함수를'system'이라고 부릅니다. OS는 당신의 OS에 달려 있으며, OP가 어떤 OS를 사용하는지 알지 못합니다. – abarnert
@abarnert : 맞습니다. 내 실수. 대신에''man system' (http://linux.die.net/man/3/system)을 가리키고'/ bin/sh -c'를 사용한다고 언급 할 것입니다. –