#########################################
cmd 모음
#########################################
//////////////////////////////////////////////////////////////////////////////////
part1. find 명령어
//////////////////////////////////////////////////////////////////////////////////
1. 현재 디렉토리 하위에서 원하는 디렉토리 명 찾기
find ./ -type d -name "test_domain"
2. 현재 디렉토리 하위의 모든 파일에서 원하는 단어 검색
grep -r "test" ./* |more
3. 현재 디렉토리 하위의 모든 파일에서 원하는 단어를 검색하되, 특정 단어가 들어간 줄은 빼도록
(grep -v 옵션으로 제거할 단어를 넣는다.)
grep -r "192.168.56.105" ./base_domain |grep -v logs|grep -v log|more
4. 현재 디렉토리 하위에서 특정 단어가 들어간 파일명 찾기
(ex. log4j라는 단어가 들어간 jar 파일 찾기)
find ./ -name "*log4j*.jar"
//////////////////////////////////////////////////////////////////////////////////
part2. awk 데이터 추출
//////////////////////////////////////////////////////////////////////////////////
1. 웹로직 access 로그 time-taken과 호출 url만 검색(정렬 및 동일한 값은 1번만 출력)
cat access.log.test |awk '{print $7 " --> " $10}' | sort | uniq -c
2. test.txt 파일에서 kor이 들어간 행의 전부를 출력
awk '/kor/{print $0}' test.txt
출력결과
/korea --> 1131
3. test.txt 파일에서 홍이 들어간 행의 1번 3번 열 출력
awk '/홍/{print $1, $3}' test.txt
//////////////////////////////////////////////////////////////////////////////////
part3. 파일 삭제
//////////////////////////////////////////////////////////////////////////////////
1. 현재 디렉토리 하위에서 확장자가 "txt"인 파일 모두 삭제
find . -type f -name "*.txt" -exec rm {} \;
2. 현재 디렉토리 하위에서 생성된지 30일 이상된 파일만 삭제
find . -mtime +30 -type f -exec rm {} \;
3. 현재 디렉토리 하위에서 크기가 500 kbyte 이상인 파일만 삭제
find . -size +500k -type f -exec rm {} \;
//////////////////////////////////////////////////////////////////////////////////
part4. 모니터링
//////////////////////////////////////////////////////////////////////////////////
1. watch를 이용한 특정 명령어 반복 실행
watch -n 2 "ls -arlt"
> ls -arlt를 2초에 한번 씩 실행하는 것을 모니터링 한다.