하나의 물리적 모니터만 사용하는 데스크탑 Linux의 X Window 시스템은 일반적으로 모니터 0, 화면 0을 사용합니다. Ubuntu 14.04 who
의 출력은 다음과 같습니다.
user1 :0 2016-06-15 14:25 (:0)
( ) 의 약자 :0
. 여기서는 GUI에서만 로그인합니다.:0.0
:display.screen
그런 다음 터미널 에뮬레이터를 열었습니다. screen
두 개의 서로 다른 창을 실행하고 만들었습니다(각각에는 bash
. 결과 출력은 who
다음과 같습니다.
user1 :0 2016-06-15 14:25 (:0)
user1 pts/1 2016-06-15 14:26 (:0)
user1 pts/11 2016-06-15 16:31 (:0:S.0)
user1 pts/11 2016-06-15 16:31 (:0:S.1)
이 구문을 사용하는 이유는 무엇입니까? 것 같다 :display:display.screen
. screen
실제 모니터 내에서 다른 모니터를 에뮬레이션하시겠습니까 ?
답변1
줄 끝의 텍스트를 참조하고 있습니다. screen
어떤 의사 터미널 연결을 사용하고 있는지, screen
어떤 창 번호가 할당되어 있는지를 나타내기 위해 기록됩니다 .논평그 기능은 코드에 명시되어 있습니다:
/*
* Construct a utmp entry for window wi.
* the hostname field reflects what we know about the user (display)
* location. If d_loginhost is not set, then he is local and we write
* down the name of his terminal line; else he is remote and we keep
* the hostname here. The letter S and the window id will be appended.
* A saved utmp entry in wi->w_savut serves as a template, usually.
*/
/*
* we want to set our ut_host field to something like
* ":ttyhf:s.0" or
* "faui45:s.0" or
* "132.199.81.4:s.0" (even this may hurt..), but not
* "faui45.informati"......:s.0
* HPUX uses host:0.0, so chop at "." and ":" (Eric Backus)
*/
마지막으로 여러분이 인식할 수 있는 실제 코드를 제공합니다.
sprintf(호스트 + strlen(호스트), ":S.%d", win->w_number); strncpy(u.ut_host, 호스트, sizeof(u.ut_host));
ut_host
utmp/utmpx 구조의 멤버 에 문자열을 저장합니다 .
추가 자료: