[RHEL6] 하드웨어 명령어 7탄(showkey, sysdef, xdpyinfo, xev)
본문 바로가기
IT 이야기/Linux 명령어

[RHEL6] 하드웨어 명령어 7탄(showkey, sysdef, xdpyinfo, xev)

by 찬찬이 아빠 2020. 5. 14.
반응형
  31. showkey(키보드 코드 보기)

 1) 경로 : /usr/bin/showkey

 2) 요약 : 키보드 드라이버의 키코드를 분석

 3) 사용 방법 : showkey [옵션]

 4) 옵션

 -h, --help : 버전 번호, 컴파일 옵션, 간단한 사용법 출력

 -s, --scancodes : 스캔 코드 덤프 모드로 시작

 -k, --keycodes : 키코드 덤프 모드로 시작. 아무 옵션도 지정하지 않으면 이 옵션이 기본

 -a, --ascii : 아스키 덤프 모드로 시작

 

 5) 추가 설명

showkey 명령어는 키보드에서 입력하는 키 값을 스캔 코드(scancode), 키코드(keycode), 아스키 값 등으로 확인합니다. 만일 데스크톱 환경의 터미널에서 키 값이 확인되지 않으면, Ctrl + Alt + F1 키 조합으로 가상 콘솔에서 확인해야 합니다. 아래와 같이 옵션 없이 showkey를 실행하면 키코드 값을 보여주고, 키 입력이 10초 동안 없으면 자동적으로 해당 입력 모드를 끝냅니다.

 

showkey를 실행한 후 한/영 키를 입력하여 키코드 값을 확인합니다.

# showkey
kb mode was RAW
[ if you are trying this under X, it might not work since the X server is also reading /dev/console ]
press any key (program terminates 10s after last keypress)...
keycode 28 release
keycode 100 press
keycode 100 release

 

-s 옵션으로 한/영키의 스캔 코드 값을 확인할 수 있습니다.

# showkey -s
kb mode was RAW
[ if you are trying this under X, it might not work since the X server is also reading /dev/console ]
press any key (program terminates 10s after last keypress)...
0xe0 0x38 0xe0 0xb8

 

 

  32. sysdef(시스템 정의)

 1) 경로 : /usr/sbin/sysdef

 2) 요약 : 유닉스 기반의 시스템에서 정의된 내용을 출력

 3) 사용 방법 : sysdef [옵션]

 4) 옵션

 -i : /dev/kmem으로부터 설정 내용을 출력

 -n namelist : 설정 파일(namelist)을 지정

 -h : 16진수의 현재 호스트 정보를 출력. 이 숫자값은 유일하지 않음

 -d : 시스템 주변부의 설정 내용을 디바이스 트리로 출력

 -D : 관리하고 있는 디바이스 드라이버명을 출력

 

 5) 추가 설명

sysdef 명령어는 유닉스 기반의 시스템에서 정의한 내용을 표의 형태로 출력합니다. 이는 모든 하드웨어 디바이스, 가상 디바이스, 시스템 디바이스, 적재된 모듈, 선택된 커널 튜닝 파라미터의 값을 출력합니다. 시스템의 설정 파일 목록의 기본값은 /dev/kmem입니다.

 

-d 옵션은 시스템 주변의 설정 내용을 출력합니다.

# sysdef -d | more
Node 'i86pc', unit #-1
	Node 'scsi_vhci', unit #0
    Node 'isa', unit #0
    	Node 'i8042', unit #0
        	Node 'keyboard', unit #0
            Node 'mouse', unit #0
        Node 'lp', unit #0 (no driver)
        Node 'asy', unit #0 (no driver)
        Node 'asy', unit #1 (no dirver)
        Node 'fdc', unit #0
        	Node 'fd', unit #0 (no dirver)
        Node 'pit_beep', unit #0
    Node 'pci', unit #0
    	Node 'pci15ad,1976', unit #-1 (no driver)
        Node 'pci8086,7191', unit #0

 

 

  33. xdpyinfo(X 디스플레이 정보)

 1) 경로 : /usr/bin/xdpyinfo

 2) 요약 : X 서버의 디스플레이 정보를 출력

 3) 사용 방법 : xdpyinfo [-display displayname] [-queryExtensions] [-ext extension-name]

 4) 추가 설명

xdpyinfo 명령어는 X서버의 디스플레이 정보를 출력합니다.

 

아래 예제는 depth of 필드를 필터링하여 시스템의 컬러 심도(color depth)만 출력합니다.

현재 시스템의 컬러 심도는 24비트입니다.

# xdpyinfo | grep "depth of"
depth of root window:	24 planes

 

아래는 'depths' 필드를 필터링하여 시스템에서 지원할 수 있는 컬러 심도를 출력합니다.

현재 시스템은 8, 16, 24, 32 비트를 지원합니다.

# xdpyinfo | grep "depths"
depths (7):	24, 1, 4, 8, 15, 16, 32

 

 

 

  34. xev(X 이벤트 값)

 1) 경로 : /usr/bin/xev

 2) 요약 : X의 이벤트 값을 출력

 3) 사용 방법 : xev [옵션]

 4) 옵션

 -display display : 연결한 X서버를 지정

 -geometry geom : 만일 윈도우를 생성하면 윈도우의 크기 및 위치를 지정

 -bw pixels : 윈도우의 경계 너비를 지정

 -bs {NotUseful, WhenMapped, Always} : 윈도우 백킹 스토어(backing store)의 종류를 지정. 기본값은 NotUseful. 백킹 스토어는 X 응용 프로그램의 창 일부가 다른 창에 의해 가려질 때, 가려진 부분을 Xmanage가 메모리에 저장하였다가 창이 다시 나타나면 복구시켜주는 기능

 -id windowsid : 새로운 윈도우를 생성하는 대신에 모니터링할 윈도우(windowsid)를 지정

 -s : 윈도우에 세이브 언더(save under)를 활성화

 -name string : 윈도으의 이름(string)을 지정

 -rv : 윈도우를 반전 영상으로 지정

 

 5) 추가 설명

xev 명령어는 키보드나 마우스의 이벤트 값으로 keycode 값을 출력합니다.

xev 명령을 실행하면 이벤트를 입력 받을 윈도우 창이 뜨게 되며 출력되는 keycode 값은 터미널에서 확인할 수 있습니다.

 

아래는 showkey 명령어로 한영키의 키코드를 확인하고, xev 명령어로 X윈도우에서 매핑값을 확인합니다.

현재 한/영키는 키코드 100에 매핑되어 있고, X윈도우에서는 이 키코드가 이벤트 값 108로 매핑되어 있습니다.

# showkey
kb mode was RAW
[ if you are trying this under X, it might not work since the X server is also reading /dev/console ]
press any key (program terminates 10s after last keypress)...
keycode 100 press
keycode 100 press
keycode 100 release

# xev
KeyPrress event, serial 36, synthetic NO, window 0x4a00001,
	root 0x15d, subw 0x0, time 16463662, (-298,192), root:(888,752),
    state 0x0, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 00 bytes:
    XFilterEvent returns: False
KeyRelease event, serial 36, synthetic NO, window 0x4a00001,
	root 0x15d, subw 0x0, time 16463771, (-299,192), root:(888,752),
    state 0x8, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
    XLookupString gives 0 bytes:
    XfilterEvent returns: False
반응형

댓글