I 다음 메이크 가지고패턴으로 중간 파일을 삭제합니다.
cells.csv:
echo cellA > cells.csv
echo cellB >> cells.csv
echo cellC >> cells.csv
echo cellD >> cells.csv
mkdir -p cellA
mkdir -p cellB
mkdir -p cellC
mkdir -p cellD
%/cell_gen: cells.csv
echo '[email protected] generated' > [email protected]
%/cell_gds: %/cell_gen
cat $(@D)/cell_gen > [email protected]
echo [email protected]_GDS >> [email protected]
아이디어는 두 단계에서 '셀'를 생성한다 (라고 [전지] _gen 및 [전지] _gds) 셀리스트 처음에 공지되지 반면 make의.
여기에 'cells.csv'라는 대상이 사람이 읽을 수 있지만 (에코 만 가능) 일반적인 경우는 입니다. 이전 단계의 결과 인 complexe를 기대합니다.
은 '셀'의 각 단계는 [전지]라는 디렉토리에 저장한다.
"cellA/cell_gds 만들기"를 묻는다면 왜이 경우에는 단계가 모두 실행되는지 이해할 수 없습니다. CSV 파일이 생기고 cellA/cell_gds가 나타납니다. 내가 셀라/cell_gen을하지 않는 이유
...하지만 난 설명 할 수 있습니까 ??
... "echoA cellA/cell_gen"> cellA/cell_gen "을 생성하여 실행하는 중에 볼 수 있습니다.
그리고 실제로 cellA/cell_gds를 생성합니다.
아무도 이유가 무엇인지 압니까? 파일 없음 cellA/cell_gen ??
감사합니다!
를 추가,이를 방지합니다. 사용'.PRECIOUS' 좋은 일이되지 않을 수도 있습니다 인터럽트가 발생했을 경우 파일을 삭제하는'make'을 유지합니다. – Idelic
@ 아이 딕 : 예,하지만 어떤 이유로 (GNUMake 3.81로) 작동하지 못했습니다. 나는 오히려 내가 전혀 검증 할 수없는 해결책보다 불완전한 해결책을 제시하고자한다. – Beta