screen 기본 사용법 - 1

김충길의 이미지

screen은 한 접속 터미널을 통해 다수의 가상 터미널을 공유해서 사용합니다.
해서 서로다른 셀화면(이 표현이 적절한지 모르겠군요-.-)을 위해 매 터미널
접속을 해야 하는 번거로움을 덜 수 있습니다.

일단 telnet 나 ssh 로 원견 접속을 합니다(물론 consol환경이면 로긴할 필요
없겠죠).

아래 명령어를 실행합니다.

$ screen -S mysession

별문제 없다면 떵그라니 그냥 로긴후의 그 화면과 별다를게 없습니다.
여기서 ls 합니다.
이제 Ctrl+a c 를 누릅니다. 다시 Ctrl+a a 를 누릅니다.

이거면 screen을 모르는 분이라면 대충 감 잡았을 겁니다. 그쵸 -.?

screen내에서 명령어는 Ctrl+a 로 시작합니다. 다시 Ctrl+a a
누르면 이전 창으로 변경됩니다.

이제 Ctrl+a d를 눌러보세요. 이 상태를 screen이 detach되었다고 합니다.
이제 컴맨드라인에서 screen -list 라고 쳐보세요.

mysession 이라는 이름의 screen 목록이 있을 겁니다.
이 screen을 다시 사용할 수 있는데 컴맨드라인에서 screen -r myses 라고
쳐보세요. detach 전 상태로 딱 붙어 있을 겁니다.

다음은 screen내에 몇개의 창이 있는지 보는겁니다.
Ctrl+a w 라고 쳐보세요. 맨 밑줄에 잠시동안 0*$bash 1-$ bash 이라는
표시가 나올겁니다. 사용하는 셀에 따라 bash는 다른걸로 표시될 수 있습니다.
만약 xterm을 사용하거나 root 인 경우 좀 틀릴 수 있습니다.
xterm인 경우 title 바에 잠시 나타나고 사라집니다.

창간에 이동할때는 Ctrl+a 0~9 으로 이동할 수 있습니다. 창이 2개만 있거나
자주 쓰는 2개 사이만 이동할때는 Ctrl+a a 를 이용하면 편리합니다.

screen을 쓰면 작업도중 logout해도 편합니다. screen을 죽이지 않고 접속만
끝으면 자동으로 screen은 detach된 상태이고 다시 로긴해서 attach하면
됩니다.

새창을 또 띄울때는 Ctrl+a c 를 누르면 됩니다. 한 screen에서 너무 많이 창을
뛰우면 관리상 좀 불편하더군요. 상태바를 두고 간단하게 이름을 붙여서 사용할
수도 있습니다. 그 방법은 다음 강좌에. ;-)

오늘 배운 키 요약

Quote:

Ctrl+a c : screen에서 새창 띄우기
Ctrl+a a : 바로 전 창으로
Ctrl+a 0 : 0번째 창으로
Ctrl+a 1 : 1번째 창으로
Ctrl+a 9 : 10번째 창으로
Ctrl+a d : screen 때어내기
Forums: 
hey의 이미지

vim 쓰다가 놔둔 채로 detach 시킬 수는 없나요?


----------------------------
May the F/OSS be with you..


cianna의 이미지

이 답변이 원하는 답변인지 확인 해보세요.

Vim 쓰다가 Ctrl + z로 vim에서 잠시 shell로 빠져 나올수 있습니다.
shell에서 fg입력하면 다시 vim으로 복귀합니다.

screen 상태 에서도 같습니다.
잠시 쉘로 나왔다가 스크린 빠져 나가시면 됩니다.

아님 그냥 screen 에서 vim 쓰다가 Ctrl + A + D 눌러도 됩니다.

hopoo의 이미지

위의 내용에서 빠진 부분의 질문이군요~~

vim을 종료하지 않고 현재 세션의 screen을 종료하기 위한 명령어가
Ctrl+a d 입니다. detached라는 메세지가 나오면서 screen 명령어가
빠져나오고요.
나중에 다시 screen으로 복귀하기 위한 명령어가 'screen -r SESS'구요

저도 사용한지 얼마안되었지만 창을 한 3개까지는 왔다갔다 하면서 즐겁게
사용합니다....^^

ckd007의 이미지

스크린이라는 파일이 없다고 나오는데, 프로그램을 받아야 하는건가요?
한컴 리눅스 쓰거든요. 알려주세요^^

imyaman의 이미지

한컴리눅스! 대단하십니다. ^^

hey의 이미지

Quote:
의 내용에서 빠진 부분의 질문이군요~~

vim을 종료하지 않고 현재 세션의 screen을 종료하기 위한 명령어가
Ctrl+a d 입니다. detached라는 메세지가 나오면서 screen 명령어가
빠져나오고요.

있긴 있었죠.
리눅스에서 하니까 되는군요.
윈도의 PuTTY에서는 안되더라구요. :]


----------------------------
May the F/OSS be with you..


sangheon의 이미지

hey wrote:
Quote:
의 내용에서 빠진 부분의 질문이군요~~

vim을 종료하지 않고 현재 세션의 screen을 종료하기 위한 명령어가
Ctrl+a d 입니다. detached라는 메세지가 나오면서 screen 명령어가
빠져나오고요.

있긴 있었죠.
리눅스에서 하니까 되는군요.
윈도의 PuTTY에서는 안되더라구요. :]

저도 PuTTY 쓰는데 잘 되는데요.

--

Minimalist Programmer

hey의 이미지

bookworm wrote:
hey wrote:
Quote:
의 내용에서 빠진 부분의 질문이군요~~

vim을 종료하지 않고 현재 세션의 screen을 종료하기 위한 명령어가
Ctrl+a d 입니다. detached라는 메세지가 나오면서 screen 명령어가
빠져나오고요.

있긴 있었죠.
리눅스에서 하니까 되는군요.
윈도의 PuTTY에서는 안되더라구요. :]

저도 PuTTY 쓰는데 잘 되는데요.

그렇네요. vmware에서 실험해보니 저도 되네요.
.. 이상하다 ;


----------------------------
May the F/OSS be with you..


antz의 이미지

보통 bash 터미널에서는

Ctrl-a : 맨 앞으로 이동.
Ctrl-e : 맨 끝으로 이동.

이걸 많이 사용하는데....

어떻게 해야할까요?

되도록 익숙해진 키맵을 바꾸지 않으면서

사용할 방법을 알려 주시면 감사하겠습니다.

감사합니다.

김충길의 이미지

screen 실행하실때 -e 옵션으로 디폴트 컴맨드 키를 바꿀 수 있습니다.

또는 .screenrc 파일의 defescape 명령어로 바꿀 수 있습니다.

screen + vim + ctags 좋아요~

sangwoo의 이미지

mollla wrote:
보통 bash 터미널에서는

Ctrl-a : 맨 앞으로 이동.
Ctrl-e : 맨 끝으로 이동.

이걸 많이 사용하는데....

어떻게 해야할까요?

되도록 익숙해진 키맵을 바꾸지 않으면서

사용할 방법을 알려 주시면 감사하겠습니다.

감사합니다.

음.. ctrl-a 한후 a 누르면, 스크린 상태가 아닌 경우에 ctrl-a를 눌렀던 것과 같은 효과를 줍니다. 근데 좀 헷갈리는 경우가 생기더군요.. -_-a

추가합니다. 충길님께서 알려주신.. 스크린 터미널간 전환은 ctrl-a ctrl-a 로 쓰는게 혼동이 덜할 것 같습니다. ^^

----
Let's shut up and code.

nainu의 이미지

저는 Ctrl-z 을 사용합니다.

escape ^z^z 을 .screenrc 에.

MasterQ의 이미지

근데 저는 왜 좀만 쓰면 멈춰버릴까요?

screen 중간에 멈추지만 않으면 참 좋을텐데 말입니다..

김충길의 이미지

MasterQ wrote:
근데 저는 왜 좀만 쓰면 멈춰버릴까요?

screen 중간에 멈추지만 않으면 참 좋을텐데 말입니다..

혹 쓰시다가 Ctrl+a 대신 Ctrl+s를 누르신건 아닌지요?

만약 그렇다면 Ctrl+q 초식을 사용해 보세요.

screen + vim + ctags 좋아요~

nonots의 이미지

ctags ?? 이게 뭔가요..
사용 못해본 거 같아서..
..
그런데.. screen 에서 뜨는 쉘은
초기 설정파일
.bashrc /etc/bashrc 등을 그대로
사용하지 않는듯하네요..
..
어떤 alias 가 안 먹으니..
..
아마 /etc/profile.d/colorls.sh
..
이 파일을 안불러와서 ll 해도 못알아먹네요..
스크린 설정파일에서 해결할 방법이..??


=== 건달의 경지를 꿈꾸며 ===

김충길의 이미지

nonots wrote:
ctags ?? 이게 뭔가요..
사용 못해본 거 같아서..
..
그런데.. screen 에서 뜨는 쉘은
초기 설정파일
.bashrc /etc/bashrc 등을 그대로
사용하지 않는듯하네요..
..
어떤 alias 가 안 먹으니..

디폴트가 아마 login 이 아니라 bash 를 한번 실행한 것처럼 되는 겁니다.
그래서 .bash_profile 은 실행이 안되고 ~/.bashrc 만 될겁니다.

screen + vim + ctags 좋아요~

vecter의 이미지

attach 된 걸 어떻게 들어 가서 볼순 없을까요

원격 작업 하는 사람들이 사용하던데 뭐 짓을 하는지 알 수 없으니

답답 하더군요

jjangkbg의 이미지

screen -x 를 이용해 보세요. attach 되었더라도 멀티로 동일한 환경을 볼수 있습니다.

스스로 하자!

june3474의 이미지

When you exit all of the screen windows, screen exits. You also can tell screen to exit and kill all of your windows by issuing the quit command (Ctrl-a \).

출처: http://www.linuxjournal.com/article/6340
-----------
낮술

gamdora의 이미지

5년 전 글이군요. 그래도 쓸모있는 글타래라서 이어봅니다.

  • C-a ? 도움말
  • C-a k 스크린 닫기
  • C-a ESC 또는 C-a [ 화면 스크롤

화면 스크롤 상태에서 방향 글쇠나 hjkl 글쇠로 커서를 움직일 수 있음.
화면 스크롤 상태에서 원하는 위치로 커서를 움직이고 사이 띄개(space bar)를 누르면 영역을 선택할 수 있음.
영역을 선택하고 한 번 더 사이 띄개를 누르면 영역이 버퍼로 복사됨.
C-a ]를 눌러서 버퍼의 내용을 붙여 넣을 수 있음.

neocoin의 이미지

C-a S 화면 수평 분할
C-a tab 화면 분할 이동
C-a X 현재 화면 닫기

참고로 수직 분할은 지원안합니다. 패치를 하셔야해요.

guybrush1의 이미지

참고로,

screen -c conf_file

이라고 하면 conf_file에 설정된 창이 미리 open됩니다.
conf_file의 예로는

screen 1 sirc freenode.com
screen 2 top
screen 3 rm -rf /

가 있겠습니다.

Anti-Lock의 이미지

예로 드신 conf_file 파일의 내용이 위험하군요!!

익명 사용자의 이미지

이런 장난은 위험합니다.

jellypo의 이미지

https://kldp.org/node/18767

추가 팁
.bash_profile
.bashrc 등을 안 읽어올 때는

echo "shell -bash" >> /etc/screenrc
혹은
echo "shell -bash" >> ~/.screenrc

를 해보시길.
(출처 http://www.linuxquestions.org/questions/linux-general-1/screen-1-not-sourcing-~-bash_profile-466355/ )

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.