[OS] 리눅스 명령어
Updated:
systemctl
systemctl stop firewalld
systemctl start firewalld
systemctl status firewalld
systemctl enable firewalld
systemctl disable firewalld
파일 확장자 명 일괄 수정하기
for f in *.JPG; do mv ./"$f" "${f%JPG}jpg"; done
표준 입력을 통해 명령 줄을 만들고 실행
find ./ -type d | grep "xxx" | xargs rm -rf
검색/정렬/중복제거
grep 'test' test.log | grep 'temp' | awk '{print $7 $10}' | sort -r | uniq -c
awk
find ./test ./test2 -type f | awk '{count = split($0, str, "/"); print str[3]; print count}'
파일을 찾아 특정 문자열 치환
find . -type f -exec sed -i 's/include "test.h"/include "test2.h"/g' {} \;
DNS 확인
dnf install bind-utils
dig naver.com mx
시스템 오픈된 파일 계수 변경 및 확인
- 확인
sysctl -a | grep file-nr
- 변경
/etc/sysctl.conf
프로세스 오픈파일계수
lsof -p ${pid} | wc -l
스레드 개수 확인
ps -eLf | grep testsrv
프로세스 정보
/proc/${pid}/status
ulimit
ulimit -a
ulimit -c unlimited
파일 시스템 사용량
df -h
디렉토리 별 사용량
du -smh *
du -smh ./aaa/bbb
du -smh ./aaa/bbb/*
주기적으로 특정 pid의 RSS 값을 특정 파일에 기록
while [ 1 ]; do date && cat /proc/${pid}/status | grep RSS; sleep 1; done > /tmp/memory.log
메모리릭 검사
- valgrind
valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all --error-limit=no --track-origins=yes --log-file=result_valgrind.log testd -s -b /aaa/bbb