티스토리 뷰

실제 접속한 사용자가 있을 때, 웹서버를 재시작하는 경우가 종종 있어서 

현재 접속한 사용자가 있는지 확인하는 리눅스 명령어가 필요해 정리해 봤습니다. 

결과부터 이야기 하면 명령어는 다음과 같습니다. 


netstat -an | grep :80 | grep ESTB | wc -l

이 명령어를 alias를 적용해서 사용하면 바로 체크할 수 있습니다.

그럼 각각의 명령어를 한번 정리해보도록 하죠. 


netstat

현재 시스템의 네트워크 상태를 알려주는 명령어 입니다. 

프로토콜, Local Address, Foreign Address, 상태 등의 정보를 제공해 주는데요. 

다양한 옵션으로 더 많은 정보를 볼 수도 있습니다. 

-a
모든 소켓 정보를 출력합니다.
-n
호스트명 대신 숫자로 출력합니다.
-p
PID와 프로그램 이름을 출력합니다.
-t
TCP 프로토콜만 출력합니다.
-u
UDP 프로토콜만 출력합니다.

예를 들어 "LISTEN" 상태로 서비스중인 목록을 보고 싶을 경우 다음과 같이 하면 됩니다. 

> netstat -nat | grep LISTEN

netstat 명령어 실행 결과


grep

grep 명령어는 너무나 잘 알고 있을 거라고 생각합니다. 

정규식 형태로 매칭되는 부분을 찾아주는 리눅스 명령어 인데요. 

여기에서는 ":80"이라는 문자열과 "ESTB" (상태가 ESTABLISHED)인 경우를 추출했습니다.


wc

문서가 몇 줄이나 몇 단어로 되어 있는지 세어서 보여주는 명령어 입니다. 

옵션은 다음과 같네요. 

-c
문자 수를 보여줍니다.
-l
라인(줄) 수를 보여줍니다.
-w
단어 수를 보여줍니다.
-L
가장 긴 라인(줄) 하나만 보여줍니다.


자주 사용하는 명령어인데 할때마다 찾아봐야 해서 한번 정리해 봅니다. 



댓글
댓글쓰기 폼