Press "Enter" to skip to content

[태그:] grep

리눅스 서버 파일 삭제해도 하드공간 확보가 안되는 경우

갑자기 하드(HDD or SSD) 용량 부족이 발생하면 당황하기 마련이다.

급하게 임시파일이나 로그파일들을 삭제해도 이상하게 free space 확보가 안되는 경우가 있다.

디스크 용량 확인

df -h

디렉토리별 용량확인

sudo du -sh * | sort -hr

파일 삭제 후에도 용량 확보 안될경우 체크 명령

/usr/sbin/lsof / | grep deleted

조회되는 프로세스 강제 종료

kill -9 <PID 번호>

다시 디스크 용량 확인

df -h

이상이 있는 프로세스가 파일을 물고 있어서 용량 회복이 안된 상태였는데, 프로세스를 강제로 종료 시켰으므로 용량이 회복됨.

리눅스에서 파일안에 텍스트 검색하기

리눅스 쉘에서 일일이 파일을 열어서 특정 문자열이 있는지 검색하기 너무 힘들다.
특히 프로그래머들이 짜증을 겁나 낼 것이다.

그래서 한방에 서브디렉토리까지 파일들을 다 훓어서 특정 문자열이 있는 파일 리스트를 뽑아보자!!!! (쉘에서 실행시킨다)

find .. ! \( -type d \) -name "*<em>.*</em>" | xargs grep --color=auto 찾을문자열 -n

find : 파일 찾기 명령어
.. : 현재 디렉토리보다 한단계 위에서 검색. 혹은 특정 디렉토리를 입력하면된다. 현재 디렉토리는 .
! \( -type d \) : 디렉토리는 제외한다.(파일들을 열어서 그 안에 내용을 검색할꺼니깐 디렉토리는 제외해야 한다.)
-name : 이름으로 검색하는데
“*.*” : 모든 파일을 다 검색한다. 여기서 *.php 로 바꾸면 php 파일만 찾는다.
| : 파이프라고 읽는데 요거 뒤에 같이 조합해서 실행할 커맨드를 넣는다.
xargs : grep를 실행하기 위한 명령어
grep : 파일 안의 내용을 검색하는 명령어
–color=auto : grep으로 찾을 문자열을 하일라이트(눈에 띄게) 넣어주는 옵션
찾을 문자열 : 찾고자 하는 문자열
-n : 해당 문자열이 있는 라인수 출력

요렇게 한방에 쫘악 찾아내보자. 속도도 빠름

find : 파일 찾기 명령어
.. : 현재 디렉토리보다 한단계 위에서 검색. 혹은 특정 디렉토리를 입력하면된다. 현재 디렉토리는 .
! \( -type d \) : 디렉토리는 제외한다.(파일들을 열어서 그 안에 내용을 검색할꺼니깐 디렉토리는 제외해야 한다.)
-name : 이름으로 검색하는데
“*.*” : 모든 파일을 다 검색한다. 여기서 *.php 로 바꾸면 php 파일만 찾는다.
| : 파이프라고 읽는데 요거 뒤에 같이 조합해서 실행할 커맨드를 넣는다.
xargs : grep를 실행하기 위한 명령어
grep : 파일 안의 내용을 검색하는 명령어
–color=auto : grep으로 찾을 문자열을 하일라이트(눈에 띄게) 넣어주는 옵션
찾을 문자열 : 찾고자 하는 문자열
-n : 해당 문자열이 있는 라인수 출력

요렇게 한방에 쫘악 찾아내보자. 속도도 빠름