盡其道而死者 正命也
孟子
도를 실천하는데 온 힘을 기울이다가 죽는 것이 명을 바르게 받아들이는 것이다.
Fight hard with yourself and if you cannot conquer anger, do not let it conquer you: you have begun to get the better of it if it does not show itself, if it is not given vent. Let us conceal its symptoms, and as far as possible keep it secret and hidden.
XIII, Book III, Of Anger (1900) by Seneca,
지난 번에 봤던 세네카의 화에 대하여 중에서 마음에 드는 구절의 영어 번역본을 찾아보았다.
자료의 용량이 작으면 검색 하는데 짧은 시간이 소요되고, 용량이 크면 많은 시간이 소요된다. 이는 R이나 DB에서나 마찬가지이다.
왜 이런 당연한 내용부터 언급을 하는가 하면 현재 CDM에 아주 많은 자료가 들어가 있지는 않은데도 불구하고 수십GB 정도 된다. 고성능 컴퓨터를 이용하지 않는 이상 분석을 위하여 많은 연산을 해야 한다고 하면 검색 가능한 자료의 크기를 줄여야 시간을 줄일 수 있다. 몇 시간 동안 기다린 결과가 오류 메세지라면 누구나 빡칠 상황일 것이다.
해결하는 방법은 목적에 맞는 작은 테이블을 생성하여 이를 이용하는 것이다. 누구나 알고 있는 방법이지만, 이것을 무시하면 상당한 시간과 노력만 낭비하게 된다.
A라는 셸 스크립트에서 사용한 변수를 B라는 셸 스크립트에서도 사용해야 할 경우가 있다.
인터넷 검색을 해보면 source를 이용하여 이전 스크립트를 불러오는 방법과 export를 이용하는 방법이 있는 것 같다. 해보니 source를 이용한 것이 조금 더 나에게 직관적으로 다가온다.
a.sh에서 이용한 모든 변수를 b.sh에서 이용하고 싶다면 b.sh에 다음과 같은 구절을 추가하면 된다.
source a.sh