screen은 참 좋은 어플이긴 한데, 매번 켜주고 붙이고 하는 것이 상당히 귀찮은 것이 사실이다. 그리고 여러 부가기능들을 보면 항상 켜놓는 것도 그다지 나쁘지 않은 선택인거 같아서, 몇 가지 해법을 찾아보았다.
위의 명령은 꽤 단순하다. TERM 환경변수가 screen이 아니라면, 즉 screen 내부가 아니라면 screen을 attach시켜서 현재 실행중인 screen에 붙인다. 그리고 이 붙은 screen이 종료되면 자동으로 쉘도 꺼지도록 했다.
이렇게 하면, 언제나 어디서나 접속해도 하나의 터미널을 공유할 수 있고 작업 내용을 볼 수도 있다. 편리하다.
- screen-profile 쓰기
사실 가장 무난한 방법인 것 같다. ubuntu에서 제공해주는 것인데, gentoo에서는 dpkg를 이용해서 포티지와 합쳐진 통합 관리로 설치 및 유지 보수가 가능하다.
하지만 중요한 것은... 이거 쓰는 법을 내가 잘 몰라서 이 방법은 포기했다 -_-.. 그래도 꽤 유명한 방법인 것 같으므로 조금만 찾아보면 적절한 해답을 얻을 수 있을거라고 믿는다. - 직접 쉘스크립트를 짜서 자동으로 붙게 만들기
이 것이 내가 소개하고자 하는 방법이다.
먼저, screen의 옵션에 대해 조금 알 필요가 있다.- -x : 현재 실행중인 screen에 attach하되, 이미 attach된 screen이라고 해도 동시에 보기 모드로 붙는다.
- -R : attach가 가능하면 attach를 하고, attach가 불가능하면 새롭게 screen 세션을 만든다.
그리고, screen이 수행중일 때는 기본값으로 TERM 환경변수가 screen이 된다는 점을 이용하면 screen 내에서 쉘이 실행될 때 screen이 또 실행되는 것을 막을 수 있다.
if [[ $TERM != "screen" ]]; then
screen -x -R -q
exit
fi
screen -x -R -q
exit
fi
위의 명령은 꽤 단순하다. TERM 환경변수가 screen이 아니라면, 즉 screen 내부가 아니라면 screen을 attach시켜서 현재 실행중인 screen에 붙인다. 그리고 이 붙은 screen이 종료되면 자동으로 쉘도 꺼지도록 했다.
이렇게 하면, 언제나 어디서나 접속해도 하나의 터미널을 공유할 수 있고 작업 내용을 볼 수도 있다. 편리하다.
'유용한 어플 > screen' 카테고리의 다른 글
| 자동으로 screen 켜기 (0) | 2009/06/26 |
|---|---|
| screen 소개 (0) | 2009/06/17 |
