who 명령어는 호스트에 로그인한 사용자의 정보를 출력하는 명령어 중 하나다. who 명령어는 현재 접속한 사용자 정보를 ‘/var/run/utmp’ 파일에서 읽어온다. utmp 파일은 사용자가 원격으로 서버에 로그인할 때 사용자의 정보를 저장하고 사용자가 원격 호스트에서 로그아웃 할 때 저장되어 있는 정보를 제거한다.
who명령어는 현재 서버에 접속해 있는 사용자의 로그인명, 터미널, 로그인 시간, 원격 호스트 또는 X디스플레이를 출력한다.
사용법
who [-abdHlmpqrsTtu] [file]
who am i
who 명령어를 실행하면 시스템에 로그인되어 있는 사용자들의 로그인 정보를 출력해준다.
$ who
user1 pts/2 2022-01-27 10:06 (127.0.0.1)
user2 pts/4 2021-12-14 20:12 (127.0.0.1)
user2 pts/7 2021-08-04 19:32 (127.0.0.1)
user2 pts/0 2022-02-04 12:59 (127.0.0.1)
newuser pts/15 2021-12-23 11:09 (127.0.0.1)
출력 결과의 첫 번째 컬럼은 유저이름을 의미하고 두번째는 접속 터미널 정보, 세번째는 로그인 타임 그리고 마지막에는 리모트 호스트 정보(ip 혹은 호스트네임)이 출력된다.
만약 현재 접속하고 있는 세션이 어떤 계정으로 로그인했는지 확인하려면 ‘who am i’ 명령어를 실행하면 된다.
$ who am i
myself pts/60 2022-02-04 10:02 (127.0.0.1)
옵션
옵션 | 긴버전 | 설명 |
-a | --all | -b -d --login -p -r -t -T -u 옵션과 동일 |
-b | --boot | 마지막 부팅 시간을 출력 |
-d | --dead | 죽은 프로세스 정보를 출력 |
-H | --heading | 컬럼 헤더 (어떤 컬럼인지) 정보를 출력 |
-l | --login | 시스템 로그인 프로세스 정보를 출력 |
--lookup | DNS를 통해 호스트 이름을 가져옴 | |
-m | 호스트 이름과 사용자 정보만 출력 | |
-p | --process | init으로부터 생성된 Active 프로세스들을 출력 |
-q | --count | 모든 로그인한 사용자 이름과 로그인한 사용자 수를 출력 |
-r | --runlevel | 현재 런레벨(runlevel)을 출력 |
-s | --short | 이름, 행, 시간 정보만 출력 (기본값) |
-t | --time | 마지막 시간 변경 정보를 출력 |
-T, -w, -mesg | 사용자의 메시지 상태를 + 혹은 -, ?로 출력 + : write 메시지 허가 - : write 메시지 불허 ? : 터미널 장치를 찾을 수 없음 |
|
--message | -T와 동일 | |
--writable | -T와 동일 | |
-u | --users | 로그인한 사용자 나열 |
--help | who 명령어 사용법 출력 | |
--version | who 명령어 버전 정보 출력 |
댓글