개발

리눅스 - grep, find, netstat, lsof, chmod

플리트우드 2024. 12. 5. 11:37

출처 : https://jybaek.tistory.com/704

 

리눅스 명령어 삼대장: find, grep, awk

윈도우에 질려 리눅스로 넘어온 대부분의 사용자들이 가장 불편하게 느끼는 부분이 바로 터미널에 대한 높은 의존도일 것이다. 리눅스의 높은 진입장벽은 그렇게 만들어진다. 사실 요즘 세상이

jybaek.tistory.com

 


-n : 라인번호 출력하라는 의미

-r : recursive

-i : 파일의 색인번호 출력

-t : 최근 생성된 시간 순으로 파일을 출력

 

 

 

 

 

find

루트 경로에서 "파일"만 출력

find / -type f

루트 경로에서 "디렉토리"만 출력

find / -type d

루트 경로의 "파일" 중 사이즈가 5M이상이고 권한이 644인 것만 출력

find / -type f -size +5M -perm 644

 

 

 

 

 

 

grep

파일이나 표준입력으로부터 패턴을 찾아주는 역할

 

test.txt파일에서 foo라는 문자열이 있는 라인을 찾아서 출력

grep foo test.txt

 

현재 경로의 모든 파일에서 foo 라는 문자열이 있는 라인을 찾아서 출력

grep foo *

 

현재 경로와 하위에 있는 모든 파일에서 foo 라는 문자열이 있는 라인을 찾아서 출력(--recursive)

grep foo * -r

 

test.txt 파일에서 foo라는 문자열이 있는 라인을 찾아서 출력하는데,바로 다음 3라인을 함께 출력

grep foo test.txt -A 3

 

test.txt파일에서 foo라는 문자열이 있는 라인을 찾아서 라인번호와 함께 출력

grep foo test.txt -n

 

현재 경로와 하위에 있는 모든 파일에서 foo라는 문자열이 있는 라인을 라인번호와 함께 출력

grep foo * -rn

 

 

 

 

 

lsof

LiSt Open Files

리눅스와 유닉스는 추상화 된 파일 시스템을 사용해서 파일,디렉토리,소켓,라이브러리 등을 모두 파일로 처리한다. lsof는 시스템에서 열린 파일 목록을 알려주고 사용하는 프로세스, 디바이스 정보, 파일의 종류 등 상세한 정보를 출력해준다.

 

lsof -t -i :포트번호

포트번호 쓰고있는거 조회

 

lsof -i:8080

8080포트를 어떤 프로세스가 점유중인지 확인

 

lsof -i TCP:22

TCP 22번 포트를 쓰는 프로세스의 정보를 출력

 

 

 


netstat

network statistics

컴이랑 연결된 모든 네트워크 연결을 보여주는 명령어

 

 

 

 

 

 

|

리눅스 명령어에서 | 를 붙이면, 이전 명령어의 결과를 다음명령어에서 사용

netstat -na | grep 3306

누가 3306포트 쓰고있는지 조회

 

 

 

 

 

chmod 

Change Mode

파일이나 디렉토리에 부여된 권한(퍼미션)을 수정하는 명령어

그룹(g)에게 실행권한(x)을 더할(+) 경우 chmod g+x 파일명 형태를 사용

 

 

 

 

man

사용법 : man 커맨드

ex) man find
해당 명령어의 매뉴얼을 보여준다. man find를 치면 find 명령의 옵션에 대한 상세한 설명을 볼 수 있다.